Microservice benefits
While the microservices architecture looks more complicated than its monolithic counterpart, it offers multiple advantages. It offers the following:
- Separation of concerns
- Smaller projects to deal with
- More scaling and deployment options
We will discuss them in more detail in the following sections.
Separation of concerns
First of all, each microservice can be developed independently by a separate team. For instance, building a reservation service can be a full project on its own. The team in charge can code it in the programming language and database of their choice, as long as it has a well-documented HTTP API.
That also means the evolution of the app is more under control than with monoliths. For example, if the payment system changes its underlying interactions with the bank, the impact is localized inside that service, and the rest of the application stays stable and is probably unaffected.
This is known as...