Jak SOA (Service-Oriented Architecture) tak mikroslužby rozloží systémy na služby, ale liší se v granularitě, vlastnictví dat a v tom, jak služby komunikují.
Jak SOA (Service-Oriented Architecture) tak mikroslužby rozloží systémy na služby, ale liší se v granularitě, vlastnictví dat a v tom, jak služby komunikují.
| Aspekt | SOA | Mikroslužby |
|---|
| Granularita | Hrubozrnná | Jemnozrnná |
| Komunikace | Často přes ESB | Lehké (REST/gRPC/messaging) |
| Data | Často sdílená | Databáze pro službu |
| Řízení | Centralizované | Decentralizované |
| Protokol | Často SOAP/XML | Obvykle HTTP/JSON, gRPC |
SOA ─▶ Service A ─▶ [ Enterprise Service Bus ] ─▶ Service B
(smart pipes, central orchestration, shared schemas)
Microservices ─▶ Service A ──(direct REST/gRPC/event)──▶ Service B
("smart endpoints, dumb pipes" — logic lives in services)
Mikroslužby se řídí principem "smart endpoints, dumb pipes": inteligence žije v službách a přenos zůstává jednoduchý. SOA často centralizuje logiku v ESB.
Nevnášejte zpět úzké hrdlo stylu ESB. Těžké centrální sběrnice změní mikroslužby zpět na SOA s dodatečnými kroky.
Rozdíl spočívá především v decentralizaci: mikroslužby tlačí vlastnictví dat a logiku do každé služby, aby se zabránilo centrálnímu úzkému hrdlu, které trápilo mnoho nasazení SOA.
Pochopení tohoto vám zabraňuje v tom, abyste náhodou neobnovili coupling SOA pod označením mikroslužby.