Skip to content
- Smaller surface area per change
- Faster to deploy and test changes
- Can build multiple different microservices in different languages since they communicate to each other via Rest API which is language independent
Best Case for Microservices
- When the application is very big and there are teams who would work on each part of the application, then it is easy to maintain that.
- It is easily scaled up since each micorservice is deployed on a different box
- In a monolithic architecture communication is small and direct while in micorservices there is a need to communicate to other API over network. (So slow compared to monolithic).
- Code like constants or small utility has to be re-added at all places which causes repeat of code.
- If network is slow then your API may take a big hit
Challenges while build Microservcies
- Challenegs in inter communicating microservcies
- Changes has to be made at all the endpoints that consume these microservices
- All the microservices that consume microservices has to be deployed at same time.
- This causes the use of Feature flag which enables and disables the feature (which reduces the code quality if future perspective)