About this chapter
Before any fancy pattern, you decide the shape of the whole system: one deployable app, or many services talking over a network. This chapter walks that spectrum - the underrated monolith, the modular monolith, microservices - and the real bill that distribution puts on the table.
Lessons from courses
- 1 What is a monolith What is a monolith? One deployable application - and often the smartest default. Learn its real strengths and the distributed-monolith trap that costs you both ways.
- 2 The modular monolith A modular monolith is one deployment with strong internal module boundaries. Learn why it is the sweet spot for most teams and how modules actually enforce those walls.
- 3 Microservices overview Microservices are independently deployable services that own their data. Learn what they buy you - team autonomy and independent scaling - and what they really cost.
- 4 Monolith vs microservices How to choose between a monolith and microservices using team size, domain complexity and operational maturity. The rule: start monolith, extract services on real pain.
- 5 The cost of distributed systems The network is not free: latency, partial failure, no distributed transactions, eventual consistency, harder debugging - and the 8 fallacies of distributed computing.