Introduction of Microservices
Before discussing on Microservices, it should keep in mind that (specially for .Net developers) this is not a next or advance version of Web API. Also microservies
not a framework, it is basically an architecture. So Microservices are an architectural style
for web applications, where the functionality is divided up across small web services.
Why Microservices?
If we had already other architectures (i.e. Monolithic), so what is need of microservices architecture? As Monolithic applications are more of a single
complete package (the simplest form of architecture as it is having only one application layer ) having all the related needed components
and services encapsulated in one package.Microservices are deployed independently with their own database per service.
Microservies resembles the priniciple "Do one thing and do it well"
.
It is a principle which has proved it’s worthiness and is one of the reasons Unix-like systems are not obsolete even after decades.
Advantages/Features of Microservices
The microservice architecture enables the rapid, frequent and reliable delivery of large, complex applications. Having below advantages:
Microservices Architecture
An architectural style that structures an application as a collection of small self-contained processes, modelled around a business capability. They don’t share the data structure and will be communicating through APIs. In Microservices Architecture the data is federated where each microservices is responsible for its own data model and data.
Summary
To summarise, Microservice is an approach to create small services each running in their own space to avoid tight coupling. Hope you picked up a thing or two.
Cheers!