Back to Catalog
Microservices
Architecture Style
Monolithic Architecture
Everything in one deployable unit — simple to build, hard to scale as you grow.
Intent & Description
Real-world Use Case
Early-stage startup with 5 engineers ships a Rails monolith. Everyone deploys together, one DB, fast iteration. At 50 engineers and 10M users, they start extracting services via Strangler Fig.
Source
📌 TL;DR
Monolith is correct for small teams and early products. Start here, extract microservices when team/scale demand it. Don’t over-engineer day one.
Advantages
- Simple to develop, test, and deploy early on
- No distributed systems complexity — everything is a function call
- ACID transactions across the whole system trivially
- Easy to run locally — one process, one DB
- Low operational overhead
Disadvantages
- Scaling requires scaling the entire application (can’t scale one feature)
- Large team coordination bottleneck — everyone touches the same codebase
- Long CI/CD pipelines — full app must be built and tested for every change
- Technology lock-in — hard to adopt new tech for specific parts
- Reliability: one bad deploy can take down everything