Features Scalability Availability Latency Lifecycle Data Integrity Portability Manage Services Deliver Features Faster Create Business Value
traditional User Interface Business Logic Data User Interface Business Logic Data Microservices Features Scalability Manage Services Deliver Features Faster Create Business Value Availability Latency Lifecycle Data Integrity Portability
Microservices Azure Windows Server Linux Hosted Clouds Windows Server Linux Service Fabric Private Clouds Windows Server Linux High Availability Hyper-Scale Hybrid Operations High Density Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Load balancing Self-healing Data Partitioning Automated Rollback Health Monitoring Placement Constraints
Microservices Azure Windows Server Linux Hosted Clouds Windows Server Linux Service Fabric Private Clouds Windows Server Linux High Availability Hyper-Scale Hybrid Operations High Density Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Load balancing Self-healing Data Partitioning Automated Rollback Health Monitoring Placement Constraints
Microservices
Node
Time = t New Node arrived 61 Time = t Failures Detected cluster reconfigured Time = t 0 Nodes failed
System Services Failover manager Cluster manager Naming Image store
Microservices
Queues Storage Front End (Stateless Web) Stateless Middle-tier Compute Cache Load Balancer
Stateful Middle-tier Compute Stateful services: Simplify design, reduce latency Front End (Stateless Web) data stores used for analytics and disaster recovery Load Balancer
P S S S S Write Ack Read Value Write Ack
P S S S S S Must be safe in the presence of cascading failures B P X Failed X
Node 103 P S S Node 104 S S Node 102 P S S S Node 105 P S S S Node 101 S S P Node 100 S P S S P S S S
Microservices