Microservices is an architectural style that structures an application as a collection of
loosely coupled services, which implement business capabilities.
2. Jyaasa : We Design, Build and Develop Products
-Introduction
- How it works?
- Benefits
- Drawbacks
- Difference beetween Monolith and Microservices
3. Jyaasa : We Design, Build and Develop Products
Introduction
Microservices is an architectural style that structures an application as a collection of
loosely coupled services, which implement business capabilities. The microservice
architecture enables the continuous delivery/deployment of large, complex applications. It
also enables an organization to evolve its technology stack.
4. Jyaasa : We Design, Build and Develop Products
How It Works?
5. Jyaasa : We Design, Build and Develop Products
Benifits
Developer independence: Small teams work in parallel and can iterate faster than large
teams.
Isolation and resilience: If a component dies, you spin up another while and the rest of the
application continues to function.
Scalability: Smaller components take up fewer resources and can be scaled to meet
increasing demand of that component only.
Lifecycle automation: Individual components are easier to fit into continuous delivery
pipelines and complex deployment scenarios not possible with monoliths.
Relationship to the business: Microservice architectures are split along business domain
boundaries, increasing independence and understanding across the organization.
6. Jyaasa : We Design, Build and Develop Products
Drawbacks
• Developers must deal with the additional complexity of creating a distributed system.
• Deployment complexity. In production, there is also the operational complexity of
deploying and managing a system comprised of many different service types.
• Increased memory consumption. The microservice architecture replaces N monolithic
application instances with NxM services instances. If each service runs in its own JVM
(or equivalent), which is usually necessary to isolate the instances, then there is the
overhead of M times as many JVM runtimes. Moreover, if each service runs on its own
VM (e.g. EC2 instance), as is the case at Netflix, the overhead is even higher.
7. Jyaasa : We Design, Build and Develop Products
Difference between Monolithic and Microservices Application
8. Jyaasa : We Design, Build and Develop Products
Refrences
http://microservices.io/patterns/microservices.html
https://martinfowler.com/articles/microservices.html
https://opensource.com/resources/what-are-microservices
http://searchmicroservices.techtarget.com/definition/microservices
http://microservices.io/
http://microservices.io/patterns/monolithic.html
http://microservices.io/patterns/microservices.html
9. Jyaasa : We Design, Build and Develop Products
Thank you !