How is Microservice is different from SOA. As developer, I often argue about this with other dev colleagues.
SOA (Service Oriented Architecture)
– Based on old uncool tech spec like SOAP, ESB, …
– Data model is global. For example, Users are only stored in a specific service.
– Shared database. It causes a coupling issue.
– Service size is typically large. SOA is a collection of monolithic applications
– Based on open-source, lightweight tech spec like JSON, REST, …
– Bounded context specific data model. One service has users and another service has customers which is another aspect of the user.
– Loosely coupled, service specific database. It’s not shared.
– The service size is much smaller, compared to that of SOA.
from Microservice (@crichardson)