Microservices Architecture
Building 'SMART' & 'Agile' Software
Sabby Gupta {Product Architect -> Zaloni Inc.}
1
What’s in it for me?
2
3
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
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
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
Technical Value
8
Technology Heterogeneity
9
Ease of deployment
10
Composability
11
Resilience
Bulkheading - manage failure without having it cascade throughout
the services participating in the workflow
12
Scaling
13
Optimizing for replaceability
14
Organizational Value
15
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
Sample Reference Architecture
17
Development & Ops Process
18
Microservice Architecture
https://jhipster.github.io/microservices-architecture/
19
Principles of Microservices 20
Principle 1 - Business Domain Modelling & Responsibilities
Order
Customer
Bonus
Program #
Delivery
Customer
Delivery
Address
Delivery
Service Type
Billing
Customer
Billing
Address
Tax Rate
21
22
Principle 2 - Automation
23
Principle 3 - Encapsulate & Aggregate
24
Principle 4 - Autonomy / Self-Service
25
Dumb Pipes, Smart Endpoints
26
Principle 5 - Deploy Independently
Service :: Host Consumer Driven Contracts Versioning
27
Principle 6 - Api First Design
Documentation
28
Principle 6 - Api First Design
Service Discovery
29
Principle 7 - Failure Isolation
Bulkheading
Circuit Breaker
30
Principle 8 - Devops
Log Aggregation
Stats Aggregation
Service Ops Correlation
31
Principle 9 -Organizational
Culture & Psychological
Safety
~Peter Drucker~
32
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
Thanks!
Contact us:
Zaloni Inc
633 Davis Dr, Durham, NC
27709
@sabygupta
https://www.linkedin.com/in
/sabyasachigupta/
34
Top Related