The document provides an overview of microservices architecture including:
- Definitions and characteristics of microservices such as componentization via services, decentralized governance, and infrastructure automation.
- Common drivers for adopting microservices like agility, safety, and scalability.
- Guidelines for decomposing monolithic applications into microservices based on business capabilities and domain-driven design.
- Discussion of differences between microservices and service-oriented architecture (SOA).
- Ecosystem of tools involved in microservices including development frameworks, APIs, databases, containers, and service meshes.
- Common design patterns and anti-patterns when developing microservices.