Introduction to Micro-services

Hardeep Kaur
2 min readMar 21, 2021

--

Microservices is an architecture of building software as a collection of services that are highly maintainable & testable and independently deployable.

This architecture enables the rapid development of complex applications.

For example, when you visit to an online retailer, we often use the search bar to browse products. That search represents an micro-service. Sometimes it shows us the recommendations for a product, that also represents another service.

So, a microservice is a core function of an application and it runs independent of other services.

Benefits :

  • Developers can work on several micro-services concurrently. This means more developers working on the same app, at the same time, which results in less time spent in development.
  • As demand for certain services grows, we can deploy our application across multiple servers, and infrastructures to meet our needs.
  • As a complex application is broken down into smaller pieces, developers can easily update, understand and enhance those features.
  • Since development cycles are shortened, they are soon be ready to deploy in the market.

Drawbacks :

  • It leads to increased memory consumption since each service runs in its own JVM which eventually leads to higher overhead.
  • High operational complexity of deploying and managing a system comprised of many different services.
  • Developers sometimes have to deal with the additional complexity of building a distributed system.
Microservices

--

--