Sobes.tech
Junior

V čom spočíva rozdiel medzi mikroservisnou architektúrou a monolitickou?

sobes.tech AI

Odpoveď od AI

Hlavný rozdiel v rozložení aplikácie.

Monolitická architektúra:

  • Jeden samostatný spustiteľný súbor.
  • Všetky komponenty (UI, obchodná logika, prístup k dátam) sú úzko prepojené.
  • Škálovanie sa vykonáva klonovaním alebo škálovaním celej aplikácie.

Architektúra mikroservisov:

  • Aplikácia je rozdelená na súbor malých, autonómnych služieb, z ktorých každá plní svoju funkciu.
  • Služby komunikujú medzi sebou cez sieť, zvyčajne cez API.
  • Každá služba môže byť nasadená, škálovaná a vyvíjaná nezávisle.
  • Služby môžu používať rôzne technológie a programovacie jazyky.

Kľúčové rozdiely:

Vlastnosť Monolitická Mikroservisy
Veľkosť/Štruktúra Veľká, jeden blok Súbor malých, nezávislých služieb
Závislosti Vysoké Nízke, cez API
Nasadenie Jednorazové nasadenie celej aplikácie Nezávislé nasadenie služieb
Škálovateľnosť Vertikálna (výkon servera) alebo horizontálna (klonovanie) Horizontálne, podľa služieb
Technológie Zvyčajne jedna technológia/jazyk Môžu používať rôzne technológie
Odolnosť voči chybám Zlyhanie v jednom komponente môže zrútiť celý systém Zlyhanie jednej služby má menší dopad
Vývoj Pomalý, tímy pracujú na celej báze kódu Rýchly, tímy pracujú na službách nezávisle
Zložitosť Menšia v počiatočnej fáze Väčšia kvôli distribuovanému systému