SlideShare a Scribd company logo
1 of 25
Download to read offline
Messing Up Your Microservices
An Opinionated View
The 100% Guaranteed Way
Hamburg, 2022
2
© Ginkgo Analytics
Online Banking in 2019
• Business –> Buy now Pay Later
• Employees –>1551
• Microservices –> 1500
Monzo Online Banking
Messing Up Your Microservices
3
© Ginkgo Analytics
• Faster development cycles (easier deployment and
debugging)
• End to end ownership
• Platform- and language agnostic services
• Distributed architecture
• Faster time to market
• Better scalability
• Standardized service contract
• Loose coupling
• Service abstraction
• Service reusability
• DRY principle (Don’t Repeat Yourself)
• Service autonomy
• Service statelessness
• Service discoverability
• Service composability
• Greater agility
• Isolated services have better fault tolerance
• Easier to create a CI/CD pipeline for single-
responsibility
Messing Up Your Microservices
Google Search Engine Promises
4
© Ginkgo Analytics
Let’s start Messing up Microservices
Messing Up Your Microservices
Architectural
Tinkering
Reinventing
the Wheel
Shiny Object
Syndrome
5
© Ginkgo Analytics
Let’s adopt Shiny Object Syndrome
Messing Up Your Microservices
Psychological
Culture
Others
•Job security and insurance policy
•Justification of exceptional smart
sounding title
•Include the number of
microservices rolled out in the
team’s OKR
•Micro-managers decide about
the micro-services without
architectural insights
•Developing microservices
without thinking about
operational costs and ROI
6
© Ginkgo Analytics
Let’s Reinvent the Wheel – Why not?
Messing Up Your Microservices
Psychological
Culture
Others
•Proud creator of service silos
which might exist in the
organization.
•I hate microservices so I
don’t care.
•Everyone should make their
own gateway service.
•Want to use our service?
Recall Separation of
Concern.
•Wrapper service around
other service to make them
secure and reliable
•Let’s create our own
configuration
provider service
7
© Ginkgo Analytics
Let’s tinker Architectural Design
• Build bottleneck services with synchronous APIs
• Consider REST API as a microservice
• Involve customer to assist in chaos testing because “Live Testing” is real
thing. Design Thinking approach!
• Too many services, let’s package them in a single place
• Microservice across a horizontal layers e.g., data access or messaging.
• Mocking Loose Coupling
• We changed our service, so you better change as well otherwise
we won’t talk
• Abusing high functional cohesion
• Bounded Contexts Mix-ups
• Follow separation of concern, don‘t let anyone talk about your service, it
is non of their concern
• Adopt custom Logging mechanisms for micro ervices
• …..
Messing Up Your Microservices
8
© Ginkgo Analytics
Design Bottleneck Service
Messing Up Your Microservices
9
© Ginkgo Analytics
Design Bottleneck Service
Messing Up Your Microservices
10
© Ginkgo Analytics
Design Bottleneck Service
Messing Up Your Microservices
11
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Microservices
Monolith
12
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Microservices
Monolith
13
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Service
C
Service
B
Service
A
Service
F
Service
D
Service
H
Service
E
Service
I
Service
J
Service
G
Microservices
Monolith
14
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Service
C
Service
B
Service
A
Service
F
Service
D
Service
H
Service
E
Service
I
Service
J
Service
G
Microservices
Monolith
Strangler Pattern?
• Popular design pattern to incrementally transform your monolithic application into microservices.
• It replacing a particular functionality with a new service.
• Once the new functionality is ready, the old component is strangled.
• The new service is put into use.
• The old component is decommissioned altogether.
15
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Service
C
Service
B
Service
A
Service
F
Service
D
Service
H
Service
E
Service
I
Service
J
Service
G
Microservices
Monolith
Strangler Pattern?
• Popular design pattern to incrementally transform your monolithic application into microservices.
• It replacing a particular functionality with a new service.
• Once the new functionality is ready, the old component is strangled.
• The new service is put into use.
• The old component is decommissioned altogether.
16
© Ginkgo Analytics
Mix Up Bounded Context
Messing Up Your Microservices
Microservices
Domain Driven Design –> Bounded Context
• I need a mouse. Mouse in the context of computer
hardware or Zoology
• Will you take a pizza slice? Which and Why?
• Similar to the decade long unsettled debate, which
programming language is the best?
17
© Ginkgo Analytics
RESTful Service is a Microservice
Messing Up Your Microservices
REST Interface
Database
Cache
Order Module
Config
Meta
Fulfilment Module
Shipping Payment
18
© Ginkgo Analytics
RESTful Service is a Microservice
Messing Up Your Microservices
REST Interface
Database
Cache
Order Module
Config
Meta
Fulfilment Module
Shipping Payment
19
© Ginkgo Analytics
Messing Up Your Microservices
Respect Tight Coupling – Cascading Failure
Order
Service
Payment
Service
External
PayPal
Service
Shipping
Service
Fulfilment
Service
Invoice
Service
Messaging
Service
20
© Ginkgo Analytics
Messing Up Your Microservices
Respect Tight Coupling – Cascading Failure
Order
Service
Payment
Service
External
PayPal
Service
Shipping
Service
Fulfilment
Service
Invoice
Service
Messaging
Service
21
© Ginkgo Analytics
Messing Up Your Microservices
Respect Tight Coupling – Cascading Failure
Order
Service
Payment
Service
External
PayPal
Service
Shipping
Service
Fulfilment
Service
Invoice
Service
Messaging
Service
22
© Ginkgo Analytics
Messing Up Your Microservices
Respect Tight Coupling – Cascading Failure
Order
Service
Payment
Service
External
PayPal
Service
Shipping
Service
Fulfilment
Service
Invoice
Service
Messaging
Service
23
© Ginkgo Analytics
Messing Up Your Microservices
Respect Tight Coupling – Cascading Failure
Order
Service
Payment
Service
External
PayPal
Service
Shipping
Service
Fulfilment
Service
Invoice
Service
Messaging
Service
24
© Ginkgo Analytics
Summary
• Microservices are not a silver bullet or Swiss Army Knife
• Architectural decision must be made after thorough evaluation
• Done wrongly, you will improve the throughput of 24/7 support team (daily fire fighting)
• It may make your boss having some sleepless nights
• Finally! Be creative in messing up
Messing Up Your Microservices
HAMBURG - SHANGHAI – SINGAPUR - ZÜRICH
Thanks!
Do you have any Questions?

More Related Content

Similar to Messing Up Your Microservices

A New Approach to Continuous Monitoring in the Cloud
A New Approach to Continuous Monitoring in the CloudA New Approach to Continuous Monitoring in the Cloud
A New Approach to Continuous Monitoring in the CloudNETSCOUT
 
Powering the digital economy with CICS and z/OS connect - at the "z Systems...
Powering the digital economy with CICS and z/OS connect  -  at the "z Systems...Powering the digital economy with CICS and z/OS connect  -  at the "z Systems...
Powering the digital economy with CICS and z/OS connect - at the "z Systems...DevOps for Enterprise Systems
 
Manage the Velocity of Change with Cloud Computing
Manage the Velocity of Change with Cloud Computing Manage the Velocity of Change with Cloud Computing
Manage the Velocity of Change with Cloud Computing Janine Sneed
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday SeasonG3 Communications
 
IBM Blockchain Labs Explained v1.0
IBM Blockchain Labs Explained v1.0IBM Blockchain Labs Explained v1.0
IBM Blockchain Labs Explained v1.0Matt Lucas
 
Maximo and a roadmap for your IoT journey
Maximo and a roadmap for your IoT journeyMaximo and a roadmap for your IoT journey
Maximo and a roadmap for your IoT journeyHelen Fisher
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in PracticeKasun Indrasiri
 
Deliver on your innovation goals with ibm bluemix
Deliver on your innovation goals with ibm bluemixDeliver on your innovation goals with ibm bluemix
Deliver on your innovation goals with ibm bluemixYann Lecourt
 
Deliver on your innovation goals with IBM Bluemix
Deliver on your innovation goals with IBM BluemixDeliver on your innovation goals with IBM Bluemix
Deliver on your innovation goals with IBM BluemixCarl Osipov
 
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesHow to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesVMware Tanzu
 
From no services to Microservices
From no services to MicroservicesFrom no services to Microservices
From no services to MicroservicesJoão Cavalheiro
 
16370 cics project opening and project update f
16370  cics project opening and project update f16370  cics project opening and project update f
16370 cics project opening and project update fnick_garrod
 
Transform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOpsTransform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOpsAmazon Web Services
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...WSO2
 
IBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM France
 
2019 03-23-2nd-meetup-essential capabilities behind microservices
2019 03-23-2nd-meetup-essential capabilities behind microservices2019 03-23-2nd-meetup-essential capabilities behind microservices
2019 03-23-2nd-meetup-essential capabilities behind microservicesKim Kao
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...apidays
 
Cisco connect winnipeg 2018 unlocking business value with network programma...
Cisco connect winnipeg 2018   unlocking business value with network programma...Cisco connect winnipeg 2018   unlocking business value with network programma...
Cisco connect winnipeg 2018 unlocking business value with network programma...Cisco Canada
 
Accelerating Cognitive Business with Hybrid Cloud
Accelerating Cognitive Business with Hybrid CloudAccelerating Cognitive Business with Hybrid Cloud
Accelerating Cognitive Business with Hybrid CloudDenny Muktar
 
Get the Message Across: Seamlessly Transport Data to Apps, Anywhere
Get the Message Across: Seamlessly Transport Data to Apps, AnywhereGet the Message Across: Seamlessly Transport Data to Apps, Anywhere
Get the Message Across: Seamlessly Transport Data to Apps, AnywhereVMware Tanzu
 

Similar to Messing Up Your Microservices (20)

A New Approach to Continuous Monitoring in the Cloud
A New Approach to Continuous Monitoring in the CloudA New Approach to Continuous Monitoring in the Cloud
A New Approach to Continuous Monitoring in the Cloud
 
Powering the digital economy with CICS and z/OS connect - at the "z Systems...
Powering the digital economy with CICS and z/OS connect  -  at the "z Systems...Powering the digital economy with CICS and z/OS connect  -  at the "z Systems...
Powering the digital economy with CICS and z/OS connect - at the "z Systems...
 
Manage the Velocity of Change with Cloud Computing
Manage the Velocity of Change with Cloud Computing Manage the Velocity of Change with Cloud Computing
Manage the Velocity of Change with Cloud Computing
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
 
IBM Blockchain Labs Explained v1.0
IBM Blockchain Labs Explained v1.0IBM Blockchain Labs Explained v1.0
IBM Blockchain Labs Explained v1.0
 
Maximo and a roadmap for your IoT journey
Maximo and a roadmap for your IoT journeyMaximo and a roadmap for your IoT journey
Maximo and a roadmap for your IoT journey
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in Practice
 
Deliver on your innovation goals with ibm bluemix
Deliver on your innovation goals with ibm bluemixDeliver on your innovation goals with ibm bluemix
Deliver on your innovation goals with ibm bluemix
 
Deliver on your innovation goals with IBM Bluemix
Deliver on your innovation goals with IBM BluemixDeliver on your innovation goals with IBM Bluemix
Deliver on your innovation goals with IBM Bluemix
 
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesHow to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
 
From no services to Microservices
From no services to MicroservicesFrom no services to Microservices
From no services to Microservices
 
16370 cics project opening and project update f
16370  cics project opening and project update f16370  cics project opening and project update f
16370 cics project opening and project update f
 
Transform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOpsTransform Enterprise IT Infrastructure with AWS DevOps
Transform Enterprise IT Infrastructure with AWS DevOps
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
 
IBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome Challenge
 
2019 03-23-2nd-meetup-essential capabilities behind microservices
2019 03-23-2nd-meetup-essential capabilities behind microservices2019 03-23-2nd-meetup-essential capabilities behind microservices
2019 03-23-2nd-meetup-essential capabilities behind microservices
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
 
Cisco connect winnipeg 2018 unlocking business value with network programma...
Cisco connect winnipeg 2018   unlocking business value with network programma...Cisco connect winnipeg 2018   unlocking business value with network programma...
Cisco connect winnipeg 2018 unlocking business value with network programma...
 
Accelerating Cognitive Business with Hybrid Cloud
Accelerating Cognitive Business with Hybrid CloudAccelerating Cognitive Business with Hybrid Cloud
Accelerating Cognitive Business with Hybrid Cloud
 
Get the Message Across: Seamlessly Transport Data to Apps, Anywhere
Get the Message Across: Seamlessly Transport Data to Apps, AnywhereGet the Message Across: Seamlessly Transport Data to Apps, Anywhere
Get the Message Across: Seamlessly Transport Data to Apps, Anywhere
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

Messing Up Your Microservices

  • 1. Messing Up Your Microservices An Opinionated View The 100% Guaranteed Way Hamburg, 2022
  • 2. 2 © Ginkgo Analytics Online Banking in 2019 • Business –> Buy now Pay Later • Employees –>1551 • Microservices –> 1500 Monzo Online Banking Messing Up Your Microservices
  • 3. 3 © Ginkgo Analytics • Faster development cycles (easier deployment and debugging) • End to end ownership • Platform- and language agnostic services • Distributed architecture • Faster time to market • Better scalability • Standardized service contract • Loose coupling • Service abstraction • Service reusability • DRY principle (Don’t Repeat Yourself) • Service autonomy • Service statelessness • Service discoverability • Service composability • Greater agility • Isolated services have better fault tolerance • Easier to create a CI/CD pipeline for single- responsibility Messing Up Your Microservices Google Search Engine Promises
  • 4. 4 © Ginkgo Analytics Let’s start Messing up Microservices Messing Up Your Microservices Architectural Tinkering Reinventing the Wheel Shiny Object Syndrome
  • 5. 5 © Ginkgo Analytics Let’s adopt Shiny Object Syndrome Messing Up Your Microservices Psychological Culture Others •Job security and insurance policy •Justification of exceptional smart sounding title •Include the number of microservices rolled out in the team’s OKR •Micro-managers decide about the micro-services without architectural insights •Developing microservices without thinking about operational costs and ROI
  • 6. 6 © Ginkgo Analytics Let’s Reinvent the Wheel – Why not? Messing Up Your Microservices Psychological Culture Others •Proud creator of service silos which might exist in the organization. •I hate microservices so I don’t care. •Everyone should make their own gateway service. •Want to use our service? Recall Separation of Concern. •Wrapper service around other service to make them secure and reliable •Let’s create our own configuration provider service
  • 7. 7 © Ginkgo Analytics Let’s tinker Architectural Design • Build bottleneck services with synchronous APIs • Consider REST API as a microservice • Involve customer to assist in chaos testing because “Live Testing” is real thing. Design Thinking approach! • Too many services, let’s package them in a single place • Microservice across a horizontal layers e.g., data access or messaging. • Mocking Loose Coupling • We changed our service, so you better change as well otherwise we won’t talk • Abusing high functional cohesion • Bounded Contexts Mix-ups • Follow separation of concern, don‘t let anyone talk about your service, it is non of their concern • Adopt custom Logging mechanisms for micro ervices • ….. Messing Up Your Microservices
  • 8. 8 © Ginkgo Analytics Design Bottleneck Service Messing Up Your Microservices
  • 9. 9 © Ginkgo Analytics Design Bottleneck Service Messing Up Your Microservices
  • 10. 10 © Ginkgo Analytics Design Bottleneck Service Messing Up Your Microservices
  • 11. 11 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Microservices Monolith
  • 12. 12 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Microservices Monolith
  • 13. 13 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Service C Service B Service A Service F Service D Service H Service E Service I Service J Service G Microservices Monolith
  • 14. 14 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Service C Service B Service A Service F Service D Service H Service E Service I Service J Service G Microservices Monolith Strangler Pattern? • Popular design pattern to incrementally transform your monolithic application into microservices. • It replacing a particular functionality with a new service. • Once the new functionality is ready, the old component is strangled. • The new service is put into use. • The old component is decommissioned altogether.
  • 15. 15 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Service C Service B Service A Service F Service D Service H Service E Service I Service J Service G Microservices Monolith Strangler Pattern? • Popular design pattern to incrementally transform your monolithic application into microservices. • It replacing a particular functionality with a new service. • Once the new functionality is ready, the old component is strangled. • The new service is put into use. • The old component is decommissioned altogether.
  • 16. 16 © Ginkgo Analytics Mix Up Bounded Context Messing Up Your Microservices Microservices Domain Driven Design –> Bounded Context • I need a mouse. Mouse in the context of computer hardware or Zoology • Will you take a pizza slice? Which and Why? • Similar to the decade long unsettled debate, which programming language is the best?
  • 17. 17 © Ginkgo Analytics RESTful Service is a Microservice Messing Up Your Microservices REST Interface Database Cache Order Module Config Meta Fulfilment Module Shipping Payment
  • 18. 18 © Ginkgo Analytics RESTful Service is a Microservice Messing Up Your Microservices REST Interface Database Cache Order Module Config Meta Fulfilment Module Shipping Payment
  • 19. 19 © Ginkgo Analytics Messing Up Your Microservices Respect Tight Coupling – Cascading Failure Order Service Payment Service External PayPal Service Shipping Service Fulfilment Service Invoice Service Messaging Service
  • 20. 20 © Ginkgo Analytics Messing Up Your Microservices Respect Tight Coupling – Cascading Failure Order Service Payment Service External PayPal Service Shipping Service Fulfilment Service Invoice Service Messaging Service
  • 21. 21 © Ginkgo Analytics Messing Up Your Microservices Respect Tight Coupling – Cascading Failure Order Service Payment Service External PayPal Service Shipping Service Fulfilment Service Invoice Service Messaging Service
  • 22. 22 © Ginkgo Analytics Messing Up Your Microservices Respect Tight Coupling – Cascading Failure Order Service Payment Service External PayPal Service Shipping Service Fulfilment Service Invoice Service Messaging Service
  • 23. 23 © Ginkgo Analytics Messing Up Your Microservices Respect Tight Coupling – Cascading Failure Order Service Payment Service External PayPal Service Shipping Service Fulfilment Service Invoice Service Messaging Service
  • 24. 24 © Ginkgo Analytics Summary • Microservices are not a silver bullet or Swiss Army Knife • Architectural decision must be made after thorough evaluation • Done wrongly, you will improve the throughput of 24/7 support team (daily fire fighting) • It may make your boss having some sleepless nights • Finally! Be creative in messing up Messing Up Your Microservices
  • 25. HAMBURG - SHANGHAI – SINGAPUR - ZÜRICH Thanks! Do you have any Questions?