Modular monolith
One deployable application split inside into modules with clear boundaries, each owning its data and using the others only through defined interfaces.
You keep one deploy, one database server and real transactions, but modules may not reach into each other’s tables or internals, and a lint rule or architecture test enforces it. It gives most of the design benefits of microservices without network calls, distributed transactions and extra operations. A well-bounded module can later be extracted if it needs to scale on its own.
Related terms
- Microservices: An architecture where a system is built from small, separately deployed services, each owning its data and talking to the others over the network.
- Bounded context: A part of a system where each business term has one meaning and one model, with explicit translation at its edges.
- Strangler fig pattern: Replacing a legacy system piece by piece, routing one feature at a time to new code until the old system can be switched off.
