Software Engineering Professional

Book Profile

Microservices Patterns

Chris Richardson · 2018

A comprehensive pattern-language guide that teaches developers and architects how to design, build, test, deploy, and incrementally migrate to microservice-based applications by applying proven architectural and design patterns.

Get the book →

Microservices Patterns by Chris Richardson is the definitive practitioner's handbook for escaping monolithic hell and successfully adopting the microservice architecture. Organized around a curated pattern language, the book systematically addresses every major challenge teams face when decomposing applications into services: defining service boundaries using business capabilities and DDD subdomains, choosing between synchronous RPC and asynchronous messaging, maintaining data consistency across service boundaries with sagas, designing business logic with DDD aggregates and domain events, persisting aggregates with event sourcing, implementing cross-service queries with API composition and CQRS, routing external traffic through an API gateway, automating testing at every layer of the pyramid, deploying services as containers or serverless functions, making services observable and production-ready, and incrementally strangling a monolith. Each pattern is presented objectively with forces, benefits, drawbacks, and related patterns, enabling teams to make informed trade-offs rather than following hype.

What it argues

A causal model describing how architectural design choices, organizational structures, and process practices act as independent levers that shape intermediate technical and team-level states, which in turn drive ultimate software delivery and business outcomes as described throughout the Microservices Patterns book.

Key ideas it contributes