Přeskočit na obsah
Architektura

Monolith vs microservices: kdy co použít

8 min čtení
ArchitekturaMicroservicesMonolith

Monolith není sprosté slovo. A microservices nejsou silver bullet.

Monolith

  • ✅ Jednoduchý development a deployment
  • ✅ Žádná network latence mezi službami
  • ✅ Jednoduchý debugging
  • ✅ Jedna databáze, jednoduché transakce
  • ❌ Škáluje jako celek
  • ❌ Jeden tým, jeden deploy
  • ❌ Technologicky homogenní

Microservices

  • ✅ Nezávislý deployment
  • ✅ Škálování per službu
  • ✅ Technologická diverzita
  • ✅ Izolace chyb
  • ❌ Distribuovaný systém complexity
  • ❌ Network latence
  • ❌ Distributed transactions
  • ❌ Potřebujete DevOps maturity

Kdy monolith

  • Malý tým (<10 vývojářů)
  • Early stage startup
  • Nejasné domain boundaries
  • Chcete rychle shippovat

Kdy microservices

  • Velký tým (>20 vývojářů)
  • Jasné domain boundaries
  • Potřebujete nezávislý deployment
  • Různé škálovací požadavky per služba

Modular monolith — nejlepší z obou

Monolith s jasnými moduly/boundary kontexty. Můžete ho později rozdělit na microservices, pokud bude potřeba.

Pravidlo

Start with a monolith. Split when it hurts (not before). A microservices is not a goal — it's a solution to a specific problem.

CORE SYSTEMS tým

Enterprise architekti a DevOps inženýři. Stavíme systémy, které fungují.