MicroServices architecture encourage to build small, focused subsystems which can be integrated into the whole system preferably using REST protocol.
- You will have many small services with manageable code-bases which is easy to read and understand.
- You can confidently refactor or rewrite entire service because there won’t be any impact on other services.
- Each microservice can be deployed independently so that adding new features or upgrading any existing software/hardware platform won’t affect other services.
- You can easily adopt the next cool technology. If one of microservices is very critical service and performance is the highest priority then we can write that particular service using Scala in order to leverage your multi-core hardware support.
- If you are a service provider company you can sell each service separately possibly making better money compared to selling whole monolithic product.
Service Oriented Architecture remains a solid foundation for enterprises, and has diverged to include APIs and MicroServices. APIs connect across business and technology boundaries to bring diverse resources and capabilities precisely to the place where they are needed to improve customer engagement and drive business value. The emergence of the microservices paradigm delivers flexibility and scalability to the development and deployment of service-based applications.