Microservice is a method of developing software application as set independently small modules, in which each service runs unique process. It communicates through a well-defined mechanism to serve the purpose.
Software engineers near Venice in May 2011 used the term as “microservices” to the common style of programming many of them were exploring about. James Lewis presented some of the ideas in case study in March 2012 and named it as “microservices”.
Microservices are one that many industries want to adopt. Companies like Netflix, Amazon, and others have adopted the concept of microservices in their product.
To understand it in proper way, let’s look at monolithic software. In this traditional web application client posts a request on browser. The business tier executes the business logic, the database collects/stores application specific persistent data, and the UI shows the data or the result to the user.
However you have created a multiple-module project, one module is dependent on another and, moreover, the module needs dependent modules in its class path. So you can use a distributed environment, but it runs under single process background.
So we see that there in one single process, different services are communicating with each other. To achieve all this, all artifacts and their required libraries are required in each application container.
Benefits of Microservices are:
That’s all for now. We’ll be posting another part of this series on Microservices soon, so stay tuned. You can freely subscribe to this blog for weekly updates on new articles.