What are Microservices Architecture and why it need

A fellow named Adrian Cockcroft from Battery Ventures formerly Chief Architect Netflix cloud explained Microservices are Loosely Coupled service oriented architecture with bounded context.

Simply, With Microservices A Single application be made of suite of smaller services very light weight typically http around the certain business context.

Micro services Architecture are popular because of its,

Desire for faster changes: In a monolithic application we have seen the change cycles of project are tied together, few batched releases and integrated set of software and procedure for installing and we don’t do software updates too often, its quarterly probably more often every 6 months or every year or may be just at end of the project. So the idea is you want faster changes your business is moving faster. I have real need to constantly ship software continuously and I can’t do that in a fully monolithic system in many cases.

Need for greater availability: You can respond immediately for any downtime’s in micro services architecture. I will tell you an example happened on Netflix a missing semicolon on their monolithic code takes down the site for long hours and took them a while to get back online. The real need is you don’t need to tie your all services to all giant code bases as one giant application.

Scaling:  In monolithic system we can one scale few areas of application like database, messaging tier, app tier, and web tier. With microservices we can scale different services as need and not scale which are not needed.

DevOps Love:  Developer operations love micro services architecture. It’s logically fit for them to continuous delivery and automates a service as a micro service.

Characteristics of Microservices:

  • Component exposed as services.
  • Tied to a specific domain.
  • Loosely coupled.
  • Built to tolerate failure.
  • Delivered continuously via automation.
  • Built and run by independent teams.
Balakrishna Pendyala

Author: Balakrishna Pendyala

Balakrishna is a Software Engineer working in Media Streaming Domain, and also worked on Banking and Health Care domains. His areas of interest include Object Oriented Design, SOLID Design principles, Restful Web Services and Open Source softwares including Spring, Spring Boot, and Hibernate.

If you found an error, highlight it and press Shift + Enter or click here to inform us.

Leave a Reply

Your email address will not be published. Required fields are marked *