In this tutorial, we will discuss about microservices but before we go to microservices, first let’s understand why we are here? Why there is so much of hype about microservices?
Before we get into microservices, it is very important to understand:
What is Monolithic application?
A monolithic application is an application where every part of a product is a part of single application or web application and usually the data of entire application is in a single data store.
Issues with Monolithic application?
- Source code management in source control. It means each and every project’s module exists in single solution explorer of the project. So that we face lots of difficulties to maintain the project.
- Code and Database Deployments and rollbacks are a nightmare.
- Extremely big team, hence management nightmare. The side effect of this horizontal teams, which makes an organization move like a sloth due to interdendence.
- Any changes or updates to the application require modifying and redeployment of entire code.
What is Microservices?
Microservices are smaller single responsibility services. It is an approach to dividing the application into smaller, independent services. Each services have an individual specific function that communicate with other services through Apis.