Deploying an MSA provides some important benefits:
- Single responsibility: Each microservice should cover a well-defined business domain—the domain-driven design (DDD) approach can help developers build software that adheres to this concept to obtain an autonomous and atomic system.
- Explicitly published interface: A producer service publishes an interface that is used by a consumer service. This is one of the most important points because the published interface represents the contract between the producer and the consumer—once the interface has been published, the API should not be modified. A new version of a contract must be followed by a new version of the interface to avoid unpredictable impacts to the service ...