In the past few years, large enterprises started adopting the microservices architecture, however, most ended up with a “distributed monolith” and could not realize the true benefits of microservices. In this talk, I will discuss the challenges of how we built microservices in the past and and what the future strategy should look like. The strategy of leveraging the “platform” (container orchestration + Service Mesh) to provide the outer-architecture capabilities in order to build business-focused polyglot services that are decoupled from the outer architecture.
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Avoid the Distributed Monolith!!
1. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Mohamad Bayan
Avoid the Distributed Monolith!!
1
The icons for this presentation were made by Freepik from www.flaticon.com
2. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Microservices benefits include:
• Easier to build
• Independent deployment
• Precision Scalability
• Technology Diversity
• Fault isolation
• Easier to scale development
2
Microservices - Benefits
3. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 3
Microservices - Benefits
Do you truly realize these benefits the way you are building Microservices?
Microservices benefits include:
• Easier to build
• Independent deployment
• Precision Scalability
• Technology Diversity
• Fault isolation
• Easier to scale development
4. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 4
Microservices – 10000 foot view
5. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 5
Microservices – Services Layer
6. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 6
Microservices – Services Layer
7. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 7
Microservices – Logical Architecture
8. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 8
Microservices – Logical Architecture
Inner Architecture
The implementation
structure of each service.
Outer Architecture
The capabilities needed in
order to deliver a robust
Microservices Architecture.
9. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 9
Microservices – Outer Architecture
How are you solving for the Microservices Outer Architecture?
• Netflix OSS
• Spring Cloud
• Play/Akka
• …
10. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Q: How do the Microservices consume the outer architecture provided by these frameworks/toolkits?
A: Shared Libraries and Network clients.
10
Consuming the Outer Architecture
11. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 11
Consuming the Outer Architecture
Is this a “Distributed Monolith”?
Q: How do the Microservices consume the outer architecture provided by these frameworks/toolkits?
A: Shared Libraries and Network clients.
12. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Temporal Coupling
Coupling between a service and
the outer architecture components.
12
“Distributed Monolith” Observed Outcomes
Operational Complexity
Libraries and network clients
have to upgrade in lock step.
13. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Temporal Coupling
Coupling between a service and
the outer architecture components.
13
“Distributed Monolith” Observed Outcomes
Technology Limitations
Losing Polyglot and Challenging to
adopt new architecture/languages.
Operational Complexity
Libraries and network clients
have to upgrade in lock step.
Organizational and Technical Coupling
Centralized Governance due to the
tendency of standardizing on the outer-
architecture components.
14. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 14
How to avoid the “Distributed Monolith”?
Data Contracts
Formal Agreement describing
the data to be exchanged.
Network Protocols
Formal standards and policies that
define communication over a network.
15. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 15
How to avoid the “Distributed Monolith”?
Expose Foundational Capabilities as APIs – hide the implementation details only exposing data contracts and network protocols.
Data Contracts
Formal Agreement describing
the data to be exchanged.
Network Protocols
Formal standards and policies that
define communication over a network.
This is how the Internet works!!!
16. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 16
Microservices - Outer Architecture Implementation
17. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Outer Architecture implementation differs depending on the level of abstraction.
17
Microservices - Outer Architecture Implementation
18. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Containers (Docker) + Container Orchestration Platform (Kubernetes) + Service Mesh
18
Microservices 2.0
Inner Architecture
Polyglot services consuming the outer
architecture provided by the platform.
Outer Architecture
Majority of the outer architecture capabilities is
addressed by the platform (CaaS + Service Mesh).
19. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement.
Containers (Docker) + Container Orchestration Platform (Kubernetes) + Service Mesh
19
Microservices 2.0
Inner Architecture
Polyglot services consuming the outer
architecture provided by the platform.
Outer Architecture
Majority of the outer architecture capabilities is
addressed by the platform (CaaS + Service Mesh).
20. Confidential and proprietary materials for authorized Verizon personnel and outside agencies only. Use, disclosure or
distribution of this material is not permitted to any unauthorized persons or third parties except by written agreement. 20
Summary
Microservices 2.0
ü Don’t build Microservices as if its 2009/2010
ü Leverage the Platform (CaaS + Service Mesh)
ü Avoid the “Distributed Monolith”
ü Realize the benefits of Microservices