Skip to content

Instantly share code, notes, and snippets.

@SureshKL
Last active November 18, 2018 14:13
Show Gist options
  • Save SureshKL/c0331eaccebd6254bcca8ff2e2c96ddd to your computer and use it in GitHub Desktop.
Save SureshKL/c0331eaccebd6254bcca8ff2e2c96ddd to your computer and use it in GitHub Desktop.
Microservices

Microservices

Microservices are architectural style in which large & complex software applications are composed of one or more smaller services.

Microservices are design principles for an application

Four main characteristics:

  1. Loosely Coupled: The microservices are not tightly dependent on each other
  2. Small & Focused: Each microservice focus on smaller & single task
  3. Language Neutral: One microservice can be written in JAVA for performance benefits and other in Python for quicker deployment
  4. Bounded Context: One microservice need not understand other microservices implementation

Benefits of Microservices

  • Lowered learning curve: No. of lines of code would be lesser and easier to understand services one by one
  • Scale bottlenecks: When the load increases the services count can be increased to handle multiple requests
  • Quicker user acceptance testing: Every microservice can be tested quickly since it is focused only on one smaller component of the entire software system
  • Quick to market changes: Changes can be integrated to the services faster when compared to the monolithic approach
  • Business Alignment: With the above factors microservices can adapt to the newer business requirement easily
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment