When we have to plan to design and develop microservices, we should remember the following principles:
- They should be small and autonomous services.
- They should work together.
- Each microservice should have its own data store to store its data.
- External microservices should not access the data store directly. They should get that data through the microservice only. This means they should hide their data and implementation details.
- They should follow SRP.
- They should support fault isolation.
- They should support automation and continuous deployment.
- They should support business domain-driven modeling.