Getting (service) design right
summary
Common microservice designs that split around entities create many remote calls, high latency and brittle checkout and shipment flows; a concrete ecommerce refactor instead start with behavior not data, grouping services by user interactions (product catalog, cart+order, checkout, shipping) to cut cross-service calls and improve availability. Practical rules: 95% rule: split only for independent deployments and treat reuse = strong coupling. The redesign reduces required live dependencies (only payment and warehouse remain remote) at the cost of duplicated data and reconciliation work.
AI-written summary · about
chapters (10)
- 0:00Start
- 7:22Typical measures
- 12:31Rule of thumb
- 15:37Case study
- 28:01Research findings
- 29:33Vertical decomposition
- 30:21Horizontal decomposition
- 33:06DDD to the rescue?
- 39:30Architectural reasoning
- 42:20Additional reasoning
related talks
45mResponsible Microservices
30mThe Entity Microservice Trap: You May Be Doing It Wrong
49mFinding your service boundaries - a practical guide
58mFinding your service boundaries - a practical guide
16mMicroservices Paradise: is it possible to achieve?
50mFinding Your Service Boundaries - a Practical Guide
33mFrom Enterprise Architecture to Software Design - Critical Thinking
48mIT Architecture : All your micro-services are wrong PERIOD!
