Microservice architecture case study
-
Upload
rudra-tripathy -
Category
Software
-
view
77 -
download
9
Transcript of Microservice architecture case study
![Page 1: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/1.jpg)
Microservice Architecture
By Rudra prasad Tripathy
29th April
![Page 2: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/2.jpg)
Contemporary technologies
l SOA/ESB
l EAI
l Layers/tiered/component architecture
![Page 3: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/3.jpg)
![Page 4: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/4.jpg)
Gartner pattern
![Page 5: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/5.jpg)
Principlesl Componentization via Servicesl Organized around Business Capabilitiesl Products not Projectsl Smart endpoints and dumb pipesl Decentralized Governancel Decentralized Data Managementl Infrastructure Automationl Design for failurel Evolutionary Design
![Page 6: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/6.jpg)
Use case
Desktop
Mobile
RESTController
Spring core
Business processworkflow RDBMS
Searchservice
1 2
3 4
5
6
7
NGNIX
![Page 7: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/7.jpg)
Use casel The use case doesn't have spring integration, but using spring
controller.l Spring controller can access JPA service in case of Http service
operation without core. l Workflow services also can be accessed directly.l Spring security can be integrated to make it API Gateway.
![Page 8: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/8.jpg)
Contemporary technologies
l SOA/ESB
l EAI
l Layers/tiered/component architecture
![Page 9: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/9.jpg)
Componentization via Services
• component is a unit of software that is independently replaceable and upgradeable.
• One main reason for using services as components (rather than libraries) is that services are independently deployable
• A service may consist of multiple processes that will always be developed and deployed together, such as an application process and a database that's only used by that service.
![Page 10: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/10.jpg)
Organized around Business Capabilities
• Conway's Law• Cross team dependency• Smaller services make it easy for small teams working on this without much
dependency on other teams. The boundry is easy to define
![Page 11: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/11.jpg)
Products not Projects
Microservice proponents tend to avoid PROJECT model.
• The product mentality, ties in with the linkage to business capabilities
• Smaller granularity of services can make it easier to create the personal relationships between service developers and their users.
![Page 12: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/12.jpg)
Smart endpoints and dumb pipes
• Avoiding approaches that stress putting significant smarts into the communication mechanism itself.
• Applications built from microservices aim to be as decoupled and as cohesive as possible.
• Messaging over a lightweight message bus.
![Page 13: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/13.jpg)
Decentralized Governance
• One of the consequences of centralized governance is the tendency to standardize on single technology platforms.
• Teams building microservices prefer a different approach to standards too.
• Perhaps the apogee of decentralised governance is the build it / run it ethos popularised by Amazon.
• Patterns like Tolerant Reader and Consumer-Driven Contracts
• Centralized governance can be achived through API GATEWAY.
![Page 14: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/14.jpg)
Decentralized Data Management
• At the most abstract level, it means that the conceptual model of the world will differ between systems.
• As well as decentralizing decisions about conceptual models, microservices also decentralize data storage decisions.
• Choosing to manage inconsistencies in this way is a new challenge for many development teams,
![Page 15: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/15.jpg)
Infrastructure Automation
• Many of the products or systems being build with microservices are being built by teams with extensive experience of Continuous Delivery and it's precursor, Continuous Integration.
• Managing microservices in production.
• Promotion of working software 'up' the pipeline means we automate deployment to each new environment.
![Page 16: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/16.jpg)
Design for failure
• A consequence of using services as components, is that applications need to be designed so that they can tolerate the failure of services.
• ince services can fail at any time, it's important to be able to detect the failures quickly and, if possible
• Synthetic monitoring.
• Unified monitoring
![Page 17: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/17.jpg)
Evolutionary Design
• Agile pattern• Evolving architecture
![Page 18: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/18.jpg)
Tools and techniques
l Apache camell Jboss fusel WSO2
![Page 19: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/19.jpg)
Technology changes support
• Maturity in DevOp
API management tool
Maturity in REST approach.
Asynchronous capability
![Page 20: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/20.jpg)
Reference
• Martin flower.
![Page 21: Microservice architecture case study](https://reader031.fdocuments.in/reader031/viewer/2022013118/55b6e46ebb61eb6c268b484c/html5/thumbnails/21.jpg)