How to Escape The Distributed Monolith
summary
Companies with ~700 engineers and ~52 teams find RPC-based microservices become a distributed monolith because services use HTTP/gRPC and service meshes as proxies, creating temporal coupling and brittle releases. The practical alternative is to publish events (Kafka, RabbitMQ, SNS/SQS), use queues for guaranteed delivery, build sagas/conversations for orchestration, and replicate reference data (event/state-transfer or caches) so bookings, payments, housekeeping and channel management can proceed independently and recover asynchronously.
AI-written summary · about
chapters (12)
- 0:00Start
- 3:09Agenda
- 7:28The Inverse Conway's Law Maneuver
- 9:10Business Capabilities
- 10:33Business Capability Mapping
- 11:32Foundational Capabilities
- 25:21Behavioral Coupling
- 34:09Processes in Mature Businesses To Deal with Issues of Lack of Availability
- 36:02Guarantee Delivery
- 38:18Eventual Consistency
- 46:26Managing Error Flows
- 46:49Data on the Inside versus Data on the Outside
related talks
01h 03mMicroservices vs The Distributed Monolith
53mDon’t Build a Distributed Monolith: How to Avoid Doing Microservices Wrong
48mMicroservices vs The Distributed Monolith
38mMonolith vs. Microservices
43mMicroMonolith - Top anti-patterns of distributed systems
48mMicroMonolith
43mHow to Avoid Doing Microservices Completely Wrong
42mQ&A - Monolith to Microservices
