This document discusses microservices on Azure. It provides an overview of microservice patterns including the benefits of microservices like increased autonomy, scalability and team allocation. It also discusses challenges like discoverability. The document introduces Azure Service Fabric for building microservices and related cloud patterns like proxy, shared data and load leveling microservice patterns. It recommends microservices for highly skilled developers working on complex projects.
6. Team Work Allocations problem
Conflicts in source control
Mixed domains
Technology constraints
Blocking issues
IDE Overload
Slow builds
Slow tests
9. Team Work Allocations with MicroServices
Team A
• Authorization
• C#
• Service Fabric
Team B
• Customers
• Java
• Amazon EC2
Team C
• Orders
• JavaScript
• AWS Lambda
• You can allocate feature per team and parallelize development without overhead.
• Recommended to use one technology per solution, but it is possible to use one per team.
• Recommended to use one hosting platform per solution, but it is possible to use more.
10. MicroService Logical Architecture
•Angular UI and CordovaExperience
•NPM Packaged SDKSDK
•REST/HTTPProtocol
•On the wire data modelsModels
•Node.JsService
•Express Mongo ClientDAC
•Mongo DbStore
•Continuous DeliveryAutomation
•Xamarin / WPFExperience
•NuGet Packaged SDKSDK
•REST/HTTPProtocol
•Data ContractsModels
•.NET Core Web APIService
•Document Db ClientDAC
•Document DbStore
•Continuous DeliveryAutomation
Example 1 - JS Example 2 – C#
17. Density & Isolation levels
PC VM ProcessContainer
More isolated More efficient
Hardware Not shared Shared Shared Shared
Kernel Not shared Not shared Shared* Shared
System Resources
(ex: File System)
Not shared Not shared Not shared Shared
34. Reading
Domain Driven Design
Eric Evans
Continuous Delivery
Jez Humble
David Farley
Azure Service Fabric
Haishi Bai
Building Microservices
Sam Newman