MS děláme v MALLu asi 2 roky a máme za tu dobu cca 20 MS a poměrně výrazně rozebranej původní monolit. Budu mluvit hlavně o nástrojích, které je pro MS nutné mít.
6. Microservice architektura
• Podskupina SOA
• Vyčlenění části business logiky do samostatné služby
• MS je plně logovaná, zdokumentovaná, otestovaná a kdykoliv jednoduše
nasaditelná
• Služba má typicky REST rozhraní a kompletně oddělenou infrastrukturu
7. Výhody MSA
•Dekompozice složitého problému na menší části
•Výrazné zjednodušení problému napomáhá udržet kód velmi jednoduchý a
přehledný
•Každá MS může být (a často je) napsaná v jiném jazyku
•Architektura pomáhá udržet aplikaci vysoce dostupnou
•Nasazení změn trvá typicky v řádech jednotek minut
•Podporuje agilní vývoj a růst teamu
8.
9. MS – Nutné předpoklady
•Dokumentace
•Testy
•Server provisioning
•Continuous delivery
•Service discovery
•Monitoring, alerting
•Distribuované úložiště
17. Závěr
ZISK
Jednoduchost
Škálovatelnost
Vysoká odolnost vůči výpadkům
Rychlé změny
Rychlá analýza a odstranění problému
Nezávislé teamy
ZTRÁTA
Výrazně vyšší komplexnost řešení
Nutnost zavést nové postupy a technologie
Ztráta přehledu závislostí
Nutnost vyšších investic do HW
Duplikace kódu