microservices architecture: building 'smart' & 'agile' software
TRANSCRIPT
![Page 1: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/1.jpg)
Microservices Architecture
Building 'SMART' & 'Agile' Software
Sabby Gupta {Product Architect -> Zaloni Inc.}
1
![Page 2: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/2.jpg)
What’s in it for me?
2
![Page 3: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/3.jpg)
3
![Page 4: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/4.jpg)
History
2010s2000s1990s1980s< 1970s
Netflix, Amazon,Google manage theirgrowth - apis, devops,distributed paradigm
SOA, Mobile, Efficiency & Cost savings, Agile, CI/CD
LISP, PROLOG, ERLANG, SMALLTALK
Web Services -Microsoft lead, DCOM/CORBA
Actor Model (Carl Hewitt) and human services (do one thing right)
4
![Page 6: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/6.jpg)
Microservice architectural style is an approach to developinga single application as a suite of small services, each runningin its own process and communicating with lightweightmechanisms, often an HTTP resource API. These services arebuilt around business capabilities and independentlydeployable by fully automated deployment machinery. Thereis a bare minimum of centralized management of theseservices, which may be written in different programminglanguages and use different data storage technologies.
~Martin Fowler~
6
![Page 7: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/7.jpg)
Compare to SOA?
● Horizontal vs Vertical Design
● Reusability
● Governance Standards
○ Web Services (WS-*),
XML, HTTP, SOAP etc
● EAI - ESB Focus - Smart Pipes
● Popularity of containers
● SOA DONE RIGHT
(opinionated way)!! 7
![Page 8: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/8.jpg)
Technical Value
8
![Page 9: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/9.jpg)
Technology Heterogeneity
9
![Page 10: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/10.jpg)
Ease of deployment
10
![Page 11: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/11.jpg)
Composability
11
![Page 12: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/12.jpg)
Resilience
Bulkheading - manage failure without having it cascade throughout
the services participating in the workflow
12
![Page 13: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/13.jpg)
Scaling
13
![Page 14: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/14.jpg)
Optimizing for replaceability
14
![Page 15: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/15.jpg)
Organizational Value
15
![Page 16: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/16.jpg)
Organizational Alignment
“Any organization that designs a system
(defined more broadly here than just information
systems) will inevitably produce a design whose
structure is a copy of the organization’s
communication structure.”
~Melvin Conway~
If you have four groups working on a compiler,
you’ll get a 4-pass compiler.
~Eric S. Raymond~16
![Page 17: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/17.jpg)
Sample Reference Architecture
17
![Page 18: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/18.jpg)
Development & Ops Process
18
![Page 19: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/19.jpg)
Microservice Architecture
https://jhipster.github.io/microservices-architecture/
19
![Page 20: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/20.jpg)
Principles of Microservices 20
![Page 21: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/21.jpg)
Principle 1 - Business Domain Modelling & Responsibilities
Order
Customer
Bonus
Program #
Delivery
Customer
Delivery
Address
Delivery
Service Type
Billing
Customer
Billing
Address
Tax Rate
21
![Page 22: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/22.jpg)
22
![Page 23: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/23.jpg)
Principle 2 - Automation
23
![Page 24: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/24.jpg)
Principle 3 - Encapsulate & Aggregate
24
![Page 25: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/25.jpg)
Principle 4 - Autonomy / Self-Service
25
![Page 26: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/26.jpg)
Dumb Pipes, Smart Endpoints
26
![Page 27: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/27.jpg)
Principle 5 - Deploy Independently
Service :: Host Consumer Driven Contracts Versioning
27
![Page 28: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/28.jpg)
Principle 6 - Api First Design
Documentation
28
![Page 29: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/29.jpg)
Principle 6 - Api First Design
Service Discovery
29
![Page 30: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/30.jpg)
Principle 7 - Failure Isolation
Bulkheading
Circuit Breaker
30
![Page 31: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/31.jpg)
Principle 8 - Devops
Log Aggregation
Stats Aggregation
Service Ops Correlation
31
![Page 32: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/32.jpg)
Principle 9 -Organizational
Culture & Psychological
Safety
~Peter Drucker~
32
![Page 33: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/33.jpg)
Silver Bullet?
- Invest in aligning teams toservice architecture
- Invest in understanding andmodeling business domain
- Invest in infra automation
- Invest in automated testing
- Invest in ContinuousDelivery
- Invest in API First Design
- Will experience hockey stickgrowth in microserviceadoption
- OK to start monolithic andmove to microservices
33
![Page 34: Microservices Architecture: Building 'SMART' & 'Agile' Software](https://reader030.vdocuments.net/reader030/viewer/2022020314/5a654eb57f8b9a5b558b66d3/html5/thumbnails/34.jpg)
Thanks!
Contact us:
Zaloni Inc
633 Davis Dr, Durham, NC
27709
@sabygupta
https://www.linkedin.com/in
/sabyasachigupta/
34