Service Based Architecture
Service Based Architecture
- It is a mix of microservices and monolithic architectural styles
- It is composed of a user interface and several components services (by domain)
- The user interface in some scenarios can be split by (services
- The services can be in an ear or split by wars, or event containerized
- The services are usually accessed by REST API. SOAP, MQ RPC are also possible
- In a standard deployment, it is common the use a big shared database
- Using only one database can challenge a refactor to a distributed style (microservices)
- When a database is used per service a Micro Services architecture is on the corner
- One database with logical partitioning by service/domain is also possible
- It is possible and common to add an API Gateway between the User Interface and the services
- Pros: deployability, reliability, modularity, cost, testability, fault tolerance
- Cons: elasticity, scalability, simplicity, performance
- It is one of the most flexible and pragmatic architectural styles