Understanding microservice concepts
Microservices are self-contained lightweight processes that communicate over a network. Microservices provide narrowly focused APIs to their consumers. These APIs can be implemented using REST, gRPC, or events.
Microservices are not new—they have been around for many years. For example, Stubby, a general-purpose infrastructure based on RPC, was used in Google data centers in the early 2000s to connect several services with and across data centers.
They have seen a recent rise in popularity and visibility. Before microservices became popular, monolithic architectures were mainly used for developing on-premises and cloud-based applications.
A monolithic architecture allows the development of different components, such as presentation, application logic, business logic, and data access objects (DAOs), and then you either bundle them together in an enterprise archive (EAR) or web archive (WAR) or store them in a single directory hierarchy...