Comparison of Technologies Microservices
The following table compares four important types of microservice architectures. They all try to achieve high cohesion and low coupling within the system landscape. However, the different approaches rely on different levels of granularity and different techniques.
µSOA | SCS (Self-Contained System) | DDDD (Distributed Domain-driven Design | FaaS (Function as a Service) | |
---|---|---|---|---|
Size | Very small | Medium, may consist of multiple smaller microservices, independent system (including data storage and UI) | Small | As small as possible (a few hundred lines), definition of the interface first, only possible if decomposition can be reached. |
Demarcation | One task (within a domain) | One domain | One bounded context / domain | One function |
Independence | Independent development of tasks | Independent development of domains | Independent development of bounded contexts / domains | Independent development of functions |
Communication | Mostly synchronous communication (REST), resilience for calls (e.g. Hystrix), often combined with streaming (e.g. Apache Kafka) | Lightweight integration (ideally via UI), can answer requests independently, asynchronous communication with other systems (if necessary) | Asynchronous communication (for better stability), business events, redundant data storage (CQRS) | Asynchronous communication, event-based |
Coupling | Orchestration for a common goal | Low coupling of domains | Bounded context, ubiquitous language, low coupling of the contexts | Collaboration for common goal, common interfaces, emergent behavior |
Team | 2-3 persons per microservice | 1 Scrum team per SCS as main team (but possibly also several Scrum teams for different Microservices with scaled Scrum | 1 Scrum team per system | 1-2 persons per function |
Infrastructure | Common infrastructure | No special infrastructure required | Common infrastructure for professional events | Dependence on common infrastructure |
Scalability | For very high scalability requirements | Good scalability | Good scalability | For extreme scalability requirements |
Examples | Netflix, Twitter | Amazon, Otto.de, Galeria Kaufhof | Serverless architecture, AWS Lambda, Azure Functions |
µSOA
SCS
DDDD
FaaS
More than 200 customers put their trust in ConSol for IT & software
Benefit from Our Expertise
Do you Have any Further Questions about our Portfolio?
Let's talk!
Thomas Machata