Të dy SOA (Service-Oriented Architecture) dhe microservices zbërthejnë sistemet në shërbime, por ndryshojnë në granularitet, pronësinë e të dhënave dhe mënyrën e komunikimit të shërbimeve.
Të dy SOA (Service-Oriented Architecture) dhe microservices zbërthejnë sistemet në shërbime, por ndryshojnë në granularitet, pronësinë e të dhënave dhe mënyrën e komunikimit të shërbimeve.
| Aspekti | SOA | Microservices |
|---|
| Granularitet | Me kokrra të mëdha | Me kokrra të imëta |
| Komunikimi | Shpesh përmes ESB | I lehtë (REST/gRPC/messaging) |
| Të dhënat | Shpesh të ndara | Baza e të dhënave për shërbim |
| Qeverisja | Centralizuar | E decentralizuar |
| Protokolli | Shpesh SOAP/XML | Zakonisht 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 ndjekin parimin e "pikave të zgjuara, tubove të trashë": inteligenca gjendet në shërbime, dhe transporti mbetet i thjeshtë. SOA shpesh centralizon logjikën në një ESB.
Mos ri-futni një ngushtim të tipit ESB. Një autobuz qendror i rëndë e kthen microservices përsëri në SOA me hapa shtesë.
Ndryshimi ka të bëjë kryesisht me decentralizimin: microservices e kalojnë pronësinë e të dhënave dhe logjikën në çdo shërbim për të shmangur ngushtimin qendror që ka shkatërruar shumë implementime SOA.
Kuptimi i kësaj ju mbron nga rikonstruktimi i padëmshëm i lidhjes SOA nën etiketën microservices.