Microservices
Jedná se o architekturu aplikací. Kontejnerizace je pro ně ideální. Tato architektura spočívá v rozdělení programu podle funkcionalit na dílčí nezávislé aplikace.
Tyto jednotlivé aplikace se dají provozovat samostatně jako tzv. mikroslužby, které spolu navzájem komunikují.
Problémy monolitických aplikací:
- Úzce spolupracující vývojáři
- Složitý a objemný kód, který se časem nabaluje jako sněhová koule
- Složité zapracování a zaučení do vývoje
- Nutnost použití jedné technologie a nemožnost velkých změn
- Neefektivní škálování ven
- Chyba v jedné části aplikace ovlivní celou nebo se projeví jinde
Stav s použitím microservices:
- Nezávisle pracující vývojáři nebo týmy
- Jednoduchost a přehlednost kódu
- Lehké pochopení malého kódu
- Dynamické dílčí změny a různorodost technologií napříč mikroslužbami
- Škálování jen nutných částí aplikace
- Chyby v jedné mikroslužbě nemůžou ovlivnit další části aplikace
Problémy však nastávají v přechodu na tuto novou architekturu, kdy rozdělení původní aplikace a návrh propojení jednotlivých mikroslužeb může být náročný, ale ANAFRA Vám s tím pomůže!
Schéma – monolitická aplikace
Schéma – architektura microservices