Microservice Architecture

Microservice Architecture

Microservice Architecture

Prior to Microservices architecture Monolithic architecture was in practice in which all the software components are grouped together into a single package (code for different features remains on same server). Microservice architecture is a design pattern for Service-Oriented Architecture (SoA) in which application is divided into small components and each component is developed and deployed independently, each service is autonomous and implements single business function.

Major Features :

  • As a Component –
    • Microservice are treated as independent components which can be deployed independently.
  • Coupling –
    • All microservices are loosely coupled with one another which ensures that changes done in one does not affect other microservices.
  • Troubleshooting –
    • With microservice troubleshooting the fault becomes easy as only the affected microservice will go down rest will continue to function.
  • Autonomous –
    • As microservices are treated autonomous and independent so different development team can work independently.
  • Focused –
    • Each microservice is developed to deliver only one business task.

Challenges :

  • Distributed System –
    • Different technologies will be used to develop microservices which increases complexity.
  • Monitoring –
    • It will have more services to monitor in comparison to Monolithic architecture.
  • Costly –
    • Microservice Architecture is costly as different servers needs to be maintained for different services.

Share this post