Let's run down some pros and cons of a microservice architecture.
Pros and cons
Pros
Here are a few of the positive points of a microservice architecture:
- They give developers the freedom to independently architect, develop, and deploy services
- Microservices can be developed in different languages if permitted
- Easier integration and deployment than traditional monolithic applications and services
- Microservices are organized around specific business capabilities
- When change is required, only the specific microservice needs to be changed and redeployed
- Enhanced fault isolation
- They are easier to scale
- Integration to external services is made easier
Cons
Here are a few negatives when considering a microservice architecture. Please keep in mind that negative does not equal bad, just information that may affect your decision:
- Testing can be more involved
- Duplication of effort and code can occur more often
- Product management could become more complicated
- Developers may have more work when it comes to communications infrastructure
- Memory consumption may increase