Både SOA (Service-Oriented Architecture) og microservices dekomponerer systemer i tjenester, men de adskiller sig i granularitet, dataejendom og hvordan tjenester kommunikerer.
Både SOA (Service-Oriented Architecture) og microservices dekomponerer systemer i tjenester, men de adskiller sig i granularitet, dataejendom og hvordan tjenester kommunikerer.
| Aspekt | SOA | Microservices |
|---|
| Granularitet | Grovkornet | Finkornet |
| Kommunikation | Ofte via en ESB | Letvægt (REST/gRPC/messaging) |
| Data | Hyppigt delt | Database per tjeneste |
| Styring | Centraliseret | Decentraliseret |
| Protokol | Ofte SOAP/XML | Sædvanligvis 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)
Microservices følger princippet "smart endpoints, dumb pipes": intelligens bor i tjenesterne, og transporten forbliver simpel. SOA centraliserer ofte logik i en ESB.
Genindføres ikke en ESB-lignende flaskehals. En tung central bus gør microservices tilbage til SOA med ekstra trin.
Forskelligenen handler primært om decentralisering: microservices skubber dataejendom og logik ind i hver tjeneste for at undgå den centrale flaskehals, som plagede mange SOA-installationer.
At forstå dette holder dig fra ved et uheld at genopbygge SOA's koblinger under et microservices-label.