SlideShare a Scribd company logo
1 of 26
Download to read offline
The Death of Microservices
Diego Pacheco
@diego_pacheco
❏ Cat's Father
❏ Head of Software Architecture
❏ Agile Coach
❏ SOA/Microservices Expert
❏ DevOps Practitioner
❏ Author
❏ Speaker
diegopacheco
http://diego-pacheco.blogspot.com.br/
About me...
https://diegopacheco.github.io/tinyurl.com/diegopacheco
http://diego-pacheco.blogspot.com/2020/05/the-death-of-microservices-distributed.html
Companion Blog Post...
Disclaimer
Reality Mismatch
❏ Do we have Proper Microservices?
❏ There is Database Isolation?
❏ Calling “Microservices” vs being?
❏ Can we easily upgrade libs?
❏ Is the Future about microservices?
What Problem are we trying to fix?
❏ Difficulties to Scale?
❏ Specialized Solutions?
❏ Freedom to Upgrade?
❏ Better team Organization?
Often is...
❏ Social Pressure | “Envy”
❏ Sounds “easy” | looks “cool”
❏ Lack of knowing other options
❏ Agile lack of “Architecture” practices
Microservices Benefits
❏ Deploy services independently
❏ Scale services independently
❏ Technology Diversity
❏ Freedom to Upgrade services in isolation
❏ Better team organizations
Microservices drawbacks
❏ Infrastructure Complexity
❏ General Complexity (distributed systems)
❏ Duplication (not necessarily bad)
Microservices: Trade Offs
❏ Isolation has a price == duplication
❏ Eat the cake or have the cake.
❏ Distributed Monolith
❏ By denial of the drawbacks
❏ Lack of isolation
Code Duplication
❏ Bugs, Repetition -> Other approaches
❏ Is better than coupling
❏ When you need you upgrade you can't.
❏ It's fine to duplicate code!
Traps: How to build a distributed monolith 101
❏ Monorepo
❏ Shared-Libs
❏ Drivers
❏ Corporate Frameworks
❏ Tables
Traps - Monorepo
❏ Problem or Solution?
❏ It's the same thing or not? (angular)
❏ Do we have isolation or Not?
❏ Make easy to couple things.
❏ You are not Google (2B LoC)
Traps - Shared-libs
❏ Easiest form of reuse.
❏ Are evil! Why? 3rd party libs.
❏ 10s/100s exact libs to work
❏ Product vs Service company
❏ Distributed Monolith
❏ There is something worse!
Traps - Drivers
❏ Clients | Network Drivers.
❏ Pure Coupling - Cant call the service.
❏ Bad deal: Optimization for Freedom.
❏ There is a even worse problem.
Traps - Corporate Frameworks
❏ Expensive and Complex to use
❏ Lack of documentation | samples
❏ Lack of good Abstractions (level 1|2)
❏ People hate it
❏ Can't search in Stackoverflow
❏ Can't use in other companies
Traps - Frameworks as Libs
❏ Looks like a lib but it's a framework.
❏ Impose one specific model.
❏ Coupled to other libs.
❏ Hides to many things from you.
Traps - Tables
❏ Contract by accident
❏ All Datastores
❏ All Caches(i.g IMOC like Redis)
❏ Configurations (xml,json,yaml)
How we fix it?
❏ Back to the basics
❏ Duplication
❏ Packages
❏ Isolation
❏ Platforms
❏ Education
Back to the basics == SOA
http://www.soa-manifesto.org/
Don't accept deps from strangers
❏ Protect your classpath.
❏ Stop using shared-libs.
❏ NetflixOss | Spring Boot (In vs Out)
❏ Same capability: Let's reuse!
❏ Bad idea.
❏ Famous last words!
Packages are your friends
❏ Provide Isolation
❏ FAT Jars
❏ Package Explosion Tools
❏ Memory increase
❏ Sometimes: just copy the code.
Isolate everything
❏ Datastores
❏ Caches
❏ Configs
❏ Implementation
❏ Backward/Forward at Contract level
Platforms
❏ Tooling
❏ Old days of Spring framework
❏ Self-service automated Service
❏ Sidecars. .i.g: Lyft Envoy.
❏ Runtime Platforms: Kubernetes
Education
❏ SOA
❏ Training
❏ Accepting trade-offs (dplucation)
❏ Continuous Effort.
The Death of Microservices
Diego Pacheco
Thank you!

More Related Content

What's hot

Thoughts about Shape Up
Thoughts about Shape UpThoughts about Shape Up
Thoughts about Shape UpDiego Pacheco
 
Dealing with dependencies
Dealing  with dependenciesDealing  with dependencies
Dealing with dependenciesDiego Pacheco
 
Lean/Agile/DevOps 2016 part 3
Lean/Agile/DevOps 2016 part 3Lean/Agile/DevOps 2016 part 3
Lean/Agile/DevOps 2016 part 3Diego Pacheco
 
Dealing with dependencies in tests
Dealing  with dependencies in testsDealing  with dependencies in tests
Dealing with dependencies in testsDiego Pacheco
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloChristian Heilmann
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?Christian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015Jeffrey McGuire
 
Web dev presentation
Web dev presentationWeb dev presentation
Web dev presentationDomendra Sahu
 
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Codemotion
 
Developing word press professionally
Developing word press professionallyDeveloping word press professionally
Developing word press professionallyAustin Gil
 
Why Drupal 8? Why now? APR/MAY 2015
Why Drupal 8? Why now? APR/MAY 2015Why Drupal 8? Why now? APR/MAY 2015
Why Drupal 8? Why now? APR/MAY 2015Jeffrey McGuire
 

What's hot (20)

Thoughts about Shape Up
Thoughts about Shape UpThoughts about Shape Up
Thoughts about Shape Up
 
Design 101
Design 101Design 101
Design 101
 
CDKs
CDKsCDKs
CDKs
 
Dealing with dependencies
Dealing  with dependenciesDealing  with dependencies
Dealing with dependencies
 
NoSQL
NoSQLNoSQL
NoSQL
 
Lean/Agile/DevOps 2016 part 3
Lean/Agile/DevOps 2016 part 3Lean/Agile/DevOps 2016 part 3
Lean/Agile/DevOps 2016 part 3
 
Dealing with dependencies in tests
Dealing  with dependencies in testsDealing  with dependencies in tests
Dealing with dependencies in tests
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
Tf byows
Tf byowsTf byows
Tf byows
 
Tf byows
Tf byowsTf byows
Tf byows
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Tf byow
Tf byowTf byow
Tf byow
 
Tf byow
Tf byowTf byow
Tf byow
 
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015
Drupal 8 as a Drop-In Content Engine - SymfonyLive Berlin 2015
 
Sec 101
Sec 101Sec 101
Sec 101
 
Web dev presentation
Web dev presentationWeb dev presentation
Web dev presentation
 
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
Christian Heilmann - Seven Things to Do to Make You a Happier JavaScript Deve...
 
Developing word press professionally
Developing word press professionallyDeveloping word press professionally
Developing word press professionally
 
Why Drupal 8? Why now? APR/MAY 2015
Why Drupal 8? Why now? APR/MAY 2015Why Drupal 8? Why now? APR/MAY 2015
Why Drupal 8? Why now? APR/MAY 2015
 

Similar to The Death of Microservices

Cloud-Native Microservices
Cloud-Native MicroservicesCloud-Native Microservices
Cloud-Native MicroservicesDiego Pacheco
 
Cloud native principles
Cloud native principlesCloud native principles
Cloud native principlesDiego Pacheco
 
Andrea Di Persio
Andrea Di PersioAndrea Di Persio
Andrea Di PersioCodeFest
 
Cloud-Native DevOps Engineering
Cloud-Native DevOps EngineeringCloud-Native DevOps Engineering
Cloud-Native DevOps EngineeringDiego Pacheco
 
NoSQL & Distributed Log
NoSQL & Distributed LogNoSQL & Distributed Log
NoSQL & Distributed LogDiego Pacheco
 
How to get started with Site Reliability Engineering
How to get started with Site Reliability EngineeringHow to get started with Site Reliability Engineering
How to get started with Site Reliability EngineeringAndrew Kirkpatrick
 
Cloud Native Microservices - Building Blocks for Digital Innovation
Cloud Native Microservices - Building Blocks for Digital InnovationCloud Native Microservices - Building Blocks for Digital Innovation
Cloud Native Microservices - Building Blocks for Digital InnovationDiego Pacheco
 
Software Design Notes
Software Design NotesSoftware Design Notes
Software Design NotesDiego Pacheco
 
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfManaging Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfAndrew Lamb
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Demi Ben-Ari
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2VMware Tanzu
 
A Gentle introduction to microservices
A Gentle introduction to microservicesA Gentle introduction to microservices
A Gentle introduction to microservicesGianluca Padovani
 
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...DevOpsDays Tel Aviv
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandEmma Jane Hogbin Westby
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)VMware Tanzu
 
Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Ted Husted
 
How Rust Views Tradeoffs
How Rust Views TradeoffsHow Rust Views Tradeoffs
How Rust Views TradeoffsC4Media
 

Similar to The Death of Microservices (20)

Cloud-Native Microservices
Cloud-Native MicroservicesCloud-Native Microservices
Cloud-Native Microservices
 
Cloud native principles
Cloud native principlesCloud native principles
Cloud native principles
 
Serverless
ServerlessServerless
Serverless
 
Andrea Di Persio
Andrea Di PersioAndrea Di Persio
Andrea Di Persio
 
Agile Architecture
Agile ArchitectureAgile Architecture
Agile Architecture
 
Cloud-Native DevOps Engineering
Cloud-Native DevOps EngineeringCloud-Native DevOps Engineering
Cloud-Native DevOps Engineering
 
NoSQL & Distributed Log
NoSQL & Distributed LogNoSQL & Distributed Log
NoSQL & Distributed Log
 
How to get started with Site Reliability Engineering
How to get started with Site Reliability EngineeringHow to get started with Site Reliability Engineering
How to get started with Site Reliability Engineering
 
Microservices
MicroservicesMicroservices
Microservices
 
Cloud Native Microservices - Building Blocks for Digital Innovation
Cloud Native Microservices - Building Blocks for Digital InnovationCloud Native Microservices - Building Blocks for Digital Innovation
Cloud Native Microservices - Building Blocks for Digital Innovation
 
Software Design Notes
Software Design NotesSoftware Design Notes
Software Design Notes
 
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdfManaging Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
Managing Software Dependencies and the Supply Chain_ MIT EM.S20.pdf
 
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2
 
A Gentle introduction to microservices
A Gentle introduction to microservicesA Gentle introduction to microservices
A Gentle introduction to microservices
 
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...
How to survive continuous innovation - Sebastien Goasguen - DevOpsDays Tel Av...
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days Ireland
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)
 
Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011
 
How Rust Views Tradeoffs
How Rust Views TradeoffsHow Rust Views Tradeoffs
How Rust Views Tradeoffs
 

More from Diego Pacheco

Naming Things Book : Simple Book Review!
Naming Things Book : Simple Book Review!Naming Things Book : Simple Book Review!
Naming Things Book : Simple Book Review!Diego Pacheco
 
Continuous Discovery Habits Book Review.pdf
Continuous Discovery Habits  Book Review.pdfContinuous Discovery Habits  Book Review.pdf
Continuous Discovery Habits Book Review.pdfDiego Pacheco
 
Encryption Deep Dive
Encryption Deep DiveEncryption Deep Dive
Encryption Deep DiveDiego Pacheco
 
Management: Doing the non-obvious! III
Management: Doing the non-obvious! IIIManagement: Doing the non-obvious! III
Management: Doing the non-obvious! IIIDiego Pacheco
 
Management doing the non-obvious II
Management doing the non-obvious II Management doing the non-obvious II
Management doing the non-obvious II Diego Pacheco
 
Testing in production
Testing in productionTesting in production
Testing in productionDiego Pacheco
 
Nine lies about work
Nine lies about workNine lies about work
Nine lies about workDiego Pacheco
 
Management: doing the nonobvious!
Management: doing the nonobvious!Management: doing the nonobvious!
Management: doing the nonobvious!Diego Pacheco
 
Making sense of streaming
Making sense of streamingMaking sense of streaming
Making sense of streamingDiego Pacheco
 
Understand the system
Understand the systemUnderstand the system
Understand the systemDiego Pacheco
 

More from Diego Pacheco (16)

Naming Things Book : Simple Book Review!
Naming Things Book : Simple Book Review!Naming Things Book : Simple Book Review!
Naming Things Book : Simple Book Review!
 
Continuous Discovery Habits Book Review.pdf
Continuous Discovery Habits  Book Review.pdfContinuous Discovery Habits  Book Review.pdf
Continuous Discovery Habits Book Review.pdf
 
Encryption Deep Dive
Encryption Deep DiveEncryption Deep Dive
Encryption Deep Dive
 
Management: Doing the non-obvious! III
Management: Doing the non-obvious! IIIManagement: Doing the non-obvious! III
Management: Doing the non-obvious! III
 
Management doing the non-obvious II
Management doing the non-obvious II Management doing the non-obvious II
Management doing the non-obvious II
 
Testing in production
Testing in productionTesting in production
Testing in production
 
Nine lies about work
Nine lies about workNine lies about work
Nine lies about work
 
Management: doing the nonobvious!
Management: doing the nonobvious!Management: doing the nonobvious!
Management: doing the nonobvious!
 
AI and the Future
AI and the FutureAI and the Future
AI and the Future
 
Kanban 2020
Kanban 2020Kanban 2020
Kanban 2020
 
Hardening
HardeningHardening
Hardening
 
Sidecars
SidecarsSidecars
Sidecars
 
SRE 101
SRE 101SRE 101
SRE 101
 
Making sense of streaming
Making sense of streamingMaking sense of streaming
Making sense of streaming
 
SOA.2020
SOA.2020SOA.2020
SOA.2020
 
Understand the system
Understand the systemUnderstand the system
Understand the system
 

Recently uploaded

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
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
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 

Recently uploaded (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 

The Death of Microservices

  • 1. The Death of Microservices Diego Pacheco
  • 2. @diego_pacheco ❏ Cat's Father ❏ Head of Software Architecture ❏ Agile Coach ❏ SOA/Microservices Expert ❏ DevOps Practitioner ❏ Author ❏ Speaker diegopacheco http://diego-pacheco.blogspot.com.br/ About me... https://diegopacheco.github.io/tinyurl.com/diegopacheco
  • 5. Reality Mismatch ❏ Do we have Proper Microservices? ❏ There is Database Isolation? ❏ Calling “Microservices” vs being? ❏ Can we easily upgrade libs? ❏ Is the Future about microservices?
  • 6. What Problem are we trying to fix? ❏ Difficulties to Scale? ❏ Specialized Solutions? ❏ Freedom to Upgrade? ❏ Better team Organization?
  • 7. Often is... ❏ Social Pressure | “Envy” ❏ Sounds “easy” | looks “cool” ❏ Lack of knowing other options ❏ Agile lack of “Architecture” practices
  • 8. Microservices Benefits ❏ Deploy services independently ❏ Scale services independently ❏ Technology Diversity ❏ Freedom to Upgrade services in isolation ❏ Better team organizations
  • 9. Microservices drawbacks ❏ Infrastructure Complexity ❏ General Complexity (distributed systems) ❏ Duplication (not necessarily bad)
  • 10. Microservices: Trade Offs ❏ Isolation has a price == duplication ❏ Eat the cake or have the cake. ❏ Distributed Monolith ❏ By denial of the drawbacks ❏ Lack of isolation
  • 11. Code Duplication ❏ Bugs, Repetition -> Other approaches ❏ Is better than coupling ❏ When you need you upgrade you can't. ❏ It's fine to duplicate code!
  • 12. Traps: How to build a distributed monolith 101 ❏ Monorepo ❏ Shared-Libs ❏ Drivers ❏ Corporate Frameworks ❏ Tables
  • 13. Traps - Monorepo ❏ Problem or Solution? ❏ It's the same thing or not? (angular) ❏ Do we have isolation or Not? ❏ Make easy to couple things. ❏ You are not Google (2B LoC)
  • 14. Traps - Shared-libs ❏ Easiest form of reuse. ❏ Are evil! Why? 3rd party libs. ❏ 10s/100s exact libs to work ❏ Product vs Service company ❏ Distributed Monolith ❏ There is something worse!
  • 15. Traps - Drivers ❏ Clients | Network Drivers. ❏ Pure Coupling - Cant call the service. ❏ Bad deal: Optimization for Freedom. ❏ There is a even worse problem.
  • 16. Traps - Corporate Frameworks ❏ Expensive and Complex to use ❏ Lack of documentation | samples ❏ Lack of good Abstractions (level 1|2) ❏ People hate it ❏ Can't search in Stackoverflow ❏ Can't use in other companies
  • 17. Traps - Frameworks as Libs ❏ Looks like a lib but it's a framework. ❏ Impose one specific model. ❏ Coupled to other libs. ❏ Hides to many things from you.
  • 18. Traps - Tables ❏ Contract by accident ❏ All Datastores ❏ All Caches(i.g IMOC like Redis) ❏ Configurations (xml,json,yaml)
  • 19. How we fix it? ❏ Back to the basics ❏ Duplication ❏ Packages ❏ Isolation ❏ Platforms ❏ Education
  • 20. Back to the basics == SOA http://www.soa-manifesto.org/
  • 21. Don't accept deps from strangers ❏ Protect your classpath. ❏ Stop using shared-libs. ❏ NetflixOss | Spring Boot (In vs Out) ❏ Same capability: Let's reuse! ❏ Bad idea. ❏ Famous last words!
  • 22. Packages are your friends ❏ Provide Isolation ❏ FAT Jars ❏ Package Explosion Tools ❏ Memory increase ❏ Sometimes: just copy the code.
  • 23. Isolate everything ❏ Datastores ❏ Caches ❏ Configs ❏ Implementation ❏ Backward/Forward at Contract level
  • 24. Platforms ❏ Tooling ❏ Old days of Spring framework ❏ Self-service automated Service ❏ Sidecars. .i.g: Lyft Envoy. ❏ Runtime Platforms: Kubernetes
  • 25. Education ❏ SOA ❏ Training ❏ Accepting trade-offs (dplucation) ❏ Continuous Effort.
  • 26. The Death of Microservices Diego Pacheco Thank you!