O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Programming Microsoft Azure Service Fabric, Second Edition

Book Description

Build, operate, and orchestrate scalable microservices applications in the cloud


This book combines a comprehensive guide to success with Microsoft Azure Service Fabric and a practical catalog of design patterns and best practices for microservices design, implementation, and operation. Haishi Bai brings together all the information you’ll need to deliver scalable and reliable distributed microservices applications on Service Fabric. He thoroughly covers the crucial DevOps aspects of utilizing Service Fabric, reviews its interactions with key cloud-based services, and introduces essential service integration mechanisms such as messaging systems and reactive systems.


Leading Microsoft Azure expert Haishi Bai shows how to:


  • Set up your Service Fabric development environment
  • Program and deploy Service Fabric applications to a local or a cloud-based cluster
  • Compare and use stateful services, stateless services, and the actor model
  • Design Service Fabric applications to maximize availability, reliability, and scalability
  • Improve management efficiency via scripting
  • Configure network security and other advanced cluster settings
  • Collect diagnostic data, and use Azure Operational Management Suite to interpret it
  • Integrate microservices components developed in parallel
  • Use containers to mobilize applications for failover, replication, scaling, and load balancing
  • Streamline containerization with Docker in Linux and Windows environments
  • Orchestrate containers to schedule workloads and maintain services at desired states
  • Implement proven design patterns for common cloud application workloads
  • Balance throughput, latency, scalability, and cost

Table of Contents

  1. Cover
  2. Title Page
  3. Copyright Page
  4. Dedication Page
  5. Contents at a Glance
  6. Contents
  7. About the Author
  8. Foreword
  9. Introduction
    1. Who should read this book
    2. This book might not be for you if…
    3. Organization of this book
    4. System requirements
    5. Downloads: Code samples
    6. Errata, updates, & book support
    7. Stay in touch
  10. Part I Fundamentals
    1. Chapter 1 Hello, Service Fabric!
      1. Microservices
      2. Service Fabric Concepts
      3. Getting Started
      4. Hello, World!
      5. Managing Your Local Cluster
      6. Additional Information
    2. Chapter 2 Stateless Services
      1. Implementing ASP.NET Core Applications
      2. Scalability and Availability of a Stateless Service
      3. Implementing Communication Stacks
      4. Additional Information
    3. Chapter 3 Stateful Services
      1. Architecture of Service Fabric Stateful Services
      2. The Simple Store Application
      3. Partitions and Replicas
      4. Additional Information
    4. Chapter 4 Actor Pattern
      1. Service Fabric Reliable Actors
      2. An Actor-Based Tic-Tac-Toe Game
      3. Timers, Reminders, and Events
      4. Service Diagnostics and Performance-Monitoring Basics
      5. Additional Information
    5. Chapter 5 Service Deployments and Upgrades
      1. The Service Fabric Application-Deployment Process
      2. The Service Fabric Health Model
      3. Rolling Upgrades
      4. Multiple Environments
      5. Using Implicit Hosts
      6. Resource Governance
    6. Chapter 6 Availability and Reliability
      1. “Broken” Services
      2. Improving Availability
      3. Improving Reliability
      4. Service Fabric Services Availability
      5. Service Fabric Services Reliability
    7. Chapter 7 Scalability and Performance
      1. Scalability Concepts
      2. Scaling a Service Fabric Cluster
      3. Resolving Bottlenecks
  11. Part II Service Life Cycle Management
    1. Chapter 8 Service Fabric Scripting
      1. Azure Cloud Shell
      2. Creating a Secured Service Fabric Cluster Using PowerShell
      3. Cluster Management Commands
      4. Application-Management Commands
    2. Chapter 9 Cluster Management
      1. Anatomy of a Service Fabric Cluster
      2. Advanced Service Fabric Cluster Configuration
      3. Updating Cluster Settings
    3. Chapter 10 Diagnostics and Monitoring
      1. Diagnostics
      2. Monitoring
    4. Chapter 11 Continuous Delivery
      1. CI, CD, and DevOps
      2. Setting Up Continuous Integration
      3. Setting Up Continuous Delivery
      4. Software Testability
      5. Setting Up Automated Tests
  12. Part III Linux and Containers
    1. Chapter 12 Service Fabric on Linux
      1. Service Fabric Hello, World! on Linux
      2. Using Communication Listeners
      3. Other Service Types and Frameworks
      4. Using Yeoman
    2. Chapter 13 Containers
      1. Docker Primer
      2. Getting Started
      3. Service Fabric and Docker
      4. Continuous Deployment with Jenkins
    3. Chapter 14 Container Orchestration
      1. Microservices Application and Orchestration Engines
      2. Container Orchestration with Service Fabric
      3. Docker Compose with Service Fabric
      4. Service Meshes
  13. Part IV Workloads and Design Patterns
    1. Chapter 15 Scalable Web
      1. The Azure PaaS Ecosystem
      2. Scaling with Reduction
      3. Scaling with Partition
      4. Scaling with Bursting
      5. Designing an Extensible Control Plane
    2. Chapter 16 Scalable Interactive Systems
      1. Interactive System Techniques
      2. CQRS and Event Sourcing
      3. Real-Time Data-Streaming Pipelines
      4. Processing Topologies with Actors
      5. Exercise: Using WebSocket for Live Data Processing
    3. Chapter 17 System Integration
      1. Data Storage
      2. Security
      3. Integration with Service Brokers
      4. Integration Patterns with Messaging
      5. Composing Service Fabric Services
  14. Part V Advanced Topics
    1. Chapter 18 Serverless Computing
      1. What Is Serverless Computing?
      2. Benefits of Serverless
      3. Serverless on Azure
      4. Reactive Messaging Patterns with Actors
      5. Sea Breeze Design Principles
    2. Chapter 19 Artificial Intelligence
      1. A Brief Introduction to Artificial Intelligence
      2. Recommendations
      3. Computer Vision
      4. Natural Language Processing
      5. Conversational UI
      6. TensorFlow and Service Fabric
    3. Chapter 20 Orchestrating an Organic Compute Plane
      1. Moving Data Through Static Compute
      2. Moving Compute to Data
    4. Closing Thoughts
  15. Part VI Appendices
    1. Appendix A: Using Microsoft Azure PowerShell Commands
      1. Installation
      2. Signing In
      3. Discovering Commands
      4. Managing Azure Resource Groups
    2. Appendix B: Pattern Index
      1. Containers
      2. Distributed Computing
      3. Multi-Tenancy
      4. Performance and Scalability
      5. System Architecture
  16. Index
  17. Code Snippets