Monolit je architektura, kde jsou všechny funkční moduly aplikace pevně propojeny. I když může být kód uvnitř logicky rozdělen do tříd nebo balíčků, výsledkem kompilace je jeden velký spustitelný soubor (např. .exe, .war nebo .jar).
I přes popularitu mikroslužeb zůstává monolit v mnoha případech lepší volbou:
Problémy nastávají, když aplikace vyroste do obřích rozměrů:
Mnoho firem začíná s monolitem a jakmile narostou, začnou z něj postupně „vykusovat“ jednotlivé moduly a převádět je na mikroslužby. Tomuto přístupu se říká Modular Monolith – mezistupeň, kde je kód čistě oddělen, ale stále běží jako jeden celek.
Zajímavost: Mnoho úspěšných firem (včetně Stack Overflow nebo Basecamp) stále úspěšně provozuje obří monolity. Dokazují tím, že mikroslužby nejsou jedinou cestou k úspěchu a že dobře udržovaný monolit může být efektivnější než špatně navržené mikroslužby (tzv. „distribuovaný monolit“).