SlideShare une entreprise Scribd logo
1  sur  26
Monoliths or
Microservices: Make
both your Domain
Francisco
Menezes
Technical Practices Head | OutSystems
@
in
francisco.menezes@outsystems.com
/francisco-menezes-921626/
The hype of microservices
The fall of monoliths
| Monoliths or Microservices: Make both your Domain
No doubt about
microservice
advantages
Improved
modularity
Abstraction of
Business
capabilities
Light and
ubiquitous
communication
Products not
projects
Dev team
autonomy
Autonomous
CD / CI
Environmental
isolation
Independent
scale
Stack
independence
| Monoliths or Microservices: Make both your Domain
But have all the promises
been fulfilled?
A fragmented / multi-stack system comes with a price
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
network latency and hiccups,
data marshalling
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
● Multiple transactions
committed independently
Transaction 1
Transaction 2
Transaction 3
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
● Multiple transactions
● Fault tolerance
communication errors, service
consistency
Undo
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
in memory and limited to API’s
GetCustomers
GetOrders
correlate
and segment
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
credentials and access management
🔒
🔒
🔒
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
● Debugging & troubleshooting
the root cause may be deep inside the
chain of services
| Monoliths or Microservices: Make both your Domain
A fragmented / multi-stack system comes with a price
Monitor
&
Logging
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
● Debugging & troubleshooting
● Monitor & logging
effective monitoring & logging,
requires a centralized service
| Monoliths or Microservices: Make both your Domain
After a degree of service proliferation
● Essential benefits become burdens
● Teams move slow mired in exploding
complexity
| Monoliths or Microservices: Make both your Domain
Is there a palliative to all
this pain?
#1 Adopt a single stack
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
● Debugging & troubleshooting
● Monitor & logging
| Monoliths or Microservices: Make both your Domain
#1 Adopt a single stack - hey, like OutSystems 11!
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
● Debugging & troubleshooting
● Monitor & logging
| Monoliths or Microservices: Make both your Domain
#2 Don’t be fundamentalist, expose a query model
● Inter-process communication
● Multiple transactions
● Fault tolerance
● Limited data mashup
● Security
● Debugging & troubleshooting
● Monitor & logging
| Monoliths or Microservices: Make both your Domain
So, when should I adopt
microservices?
Mkt
Fin
HR
SOFTWARE
COMPLEXITY
Small apps Medium sized
apps
Large monolith with a portfolio
of core systems, services and
apps
Modularize
UX
Scale
Strong reuse
app
grows
Degradation of -ilities
Teams hostage each other
Deployment is way too
complex and slow
The growth of a software factory
| Monoliths or Microservices: Make both your Domain
Mkt
Fin
HR
SOFTWARE
COMPLEXITY
Small apps Medium sized
apps
Large monolith with a portfolio
of core systems, services and
apps
Modularize
UX
Scale
Strong reuse
app
grows
SOFTWARE
COMPLEXITY
Modern digital platforms
organized as
microservices
Decoupled services
Independent teams
The moment to adopt microservices
| Monoliths or Microservices: Make both your Domain
How to balance
approaches?
monolithmicroservices
23
Domain Driven Design (DDD)
DDD drives the development of complex systems,
based in decoupled domains of technology
artifact
Independent CD/CI
pipelines for different
products/teams
| Monoliths or Microservices: Make both your Domain
24
How to ensure domain independency?
Group concepts by functional area or LOB
[ business fit ] [ decision power ]
#1
Light and stable service interfaces
[ less impacts across domains ]
#3
Dedicated multidisciplinary team
[ ownership ] [ control ]
#2
| Monoliths or Microservices: Make both your Domain
3 principles for a balanced architecture
2. Strong coupling inside a domain
benefit tight processes inside the domain
1. Be smart with your domain boundaries
base on functional area and CD/CI independence needs
3. Loose coupling across domains
ensures domain independence
| Monoliths or Microservices: Make both your Domain
Thank You!

Contenu connexe

Tendances

Tendances (20)

Wodify Technologies Automates Crossfit Gym Experience Using OutSystems
Wodify Technologies Automates Crossfit Gym Experience Using OutSystemsWodify Technologies Automates Crossfit Gym Experience Using OutSystems
Wodify Technologies Automates Crossfit Gym Experience Using OutSystems
 
Two-Speed IT: Driving Innovation by Extending Your Exisiting IT Investments
Two-Speed IT: Driving Innovation by Extending Your Exisiting IT InvestmentsTwo-Speed IT: Driving Innovation by Extending Your Exisiting IT Investments
Two-Speed IT: Driving Innovation by Extending Your Exisiting IT Investments
 
OutSystems for Local Government Making Digital Transformation a Reality for M...
OutSystems for Local Government Making Digital Transformation a Reality for M...OutSystems for Local Government Making Digital Transformation a Reality for M...
OutSystems for Local Government Making Digital Transformation a Reality for M...
 
Cisco spark - reinventing collaboration
Cisco spark - reinventing collaborationCisco spark - reinventing collaboration
Cisco spark - reinventing collaboration
 
Introduction to PlanGrid
Introduction to PlanGridIntroduction to PlanGrid
Introduction to PlanGrid
 
The Software Defined Enterprise - Session Sponsored by Amcom
The Software Defined Enterprise - Session Sponsored by AmcomThe Software Defined Enterprise - Session Sponsored by Amcom
The Software Defined Enterprise - Session Sponsored by Amcom
 
Digital Transformation of LAN Infrastructure
Digital Transformation of  LAN InfrastructureDigital Transformation of  LAN Infrastructure
Digital Transformation of LAN Infrastructure
 
NextStep 2018 - Successfully Making the Digital Transformation Leap, Deloitte
NextStep 2018 - Successfully Making the Digital Transformation Leap, DeloitteNextStep 2018 - Successfully Making the Digital Transformation Leap, Deloitte
NextStep 2018 - Successfully Making the Digital Transformation Leap, Deloitte
 
The Top 10 IT Issues in Higher Ed
The Top 10 IT Issues in Higher EdThe Top 10 IT Issues in Higher Ed
The Top 10 IT Issues in Higher Ed
 
Intent-based networking (IBN): a platform for digital business
Intent-based networking (IBN): a platform for digital businessIntent-based networking (IBN): a platform for digital business
Intent-based networking (IBN): a platform for digital business
 
CDW Presents the Future of IT - Software-Defined Enterprise
CDW Presents the Future of IT - Software-Defined EnterpriseCDW Presents the Future of IT - Software-Defined Enterprise
CDW Presents the Future of IT - Software-Defined Enterprise
 
Accenture Technology Vision | Innovation World 2013 | San Francisco
Accenture Technology Vision | Innovation World 2013 | San Francisco Accenture Technology Vision | Innovation World 2013 | San Francisco
Accenture Technology Vision | Innovation World 2013 | San Francisco
 
[Event] Digital transformation : How it affects us - PRESENTATION POST LUXEMB...
[Event] Digital transformation : How it affects us - PRESENTATION POST LUXEMB...[Event] Digital transformation : How it affects us - PRESENTATION POST LUXEMB...
[Event] Digital transformation : How it affects us - PRESENTATION POST LUXEMB...
 
BPM & SOA - Improving Government Service Delivery - Changing the City One Pro...
BPM & SOA - Improving Government Service Delivery - Changing the City One Pro...BPM & SOA - Improving Government Service Delivery - Changing the City One Pro...
BPM & SOA - Improving Government Service Delivery - Changing the City One Pro...
 
PaaS to the Future
PaaS to the FuturePaaS to the Future
PaaS to the Future
 
Going cloud
Going cloudGoing cloud
Going cloud
 
Quixy Introduction
Quixy IntroductionQuixy Introduction
Quixy Introduction
 
Pragmatic Innovation
Pragmatic InnovationPragmatic Innovation
Pragmatic Innovation
 
alfabet: A Navigation System for Innovative Transformation Projects
alfabet: A Navigation System for Innovative Transformation Projectsalfabet: A Navigation System for Innovative Transformation Projects
alfabet: A Navigation System for Innovative Transformation Projects
 
Leveraging Hospital Network Analytics
Leveraging Hospital Network AnalyticsLeveraging Hospital Network Analytics
Leveraging Hospital Network Analytics
 

Similaire à NextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes

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
VMware Tanzu
 

Similaire à NextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes (20)

Introduction to Microservices Architecture - SECCOMP 2020
Introduction to Microservices Architecture - SECCOMP 2020Introduction to Microservices Architecture - SECCOMP 2020
Introduction to Microservices Architecture - SECCOMP 2020
 
Surviving microservices
Surviving microservicesSurviving microservices
Surviving microservices
 
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
 
A Guide on What Are Microservices: Pros, Cons, Use Cases, and More
A Guide on What Are Microservices: Pros, Cons, Use Cases, and MoreA Guide on What Are Microservices: Pros, Cons, Use Cases, and More
A Guide on What Are Microservices: Pros, Cons, Use Cases, and More
 
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
 
Comparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptxComparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptx
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
 
Microsoft Microservices
Microsoft MicroservicesMicrosoft Microservices
Microsoft Microservices
 
CWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der walCWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der wal
 
Microservice intro
Microservice introMicroservice intro
Microservice intro
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 
IBM Bluemix: science fiction has been overtaken....now everything is possible
IBM Bluemix: science fiction has been overtaken....now everything is possibleIBM Bluemix: science fiction has been overtaken....now everything is possible
IBM Bluemix: science fiction has been overtaken....now everything is possible
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Kura M2M IoT Gateway
Kura M2M IoT GatewayKura M2M IoT Gateway
Kura M2M IoT Gateway
 
Collaboration over Consolidation in the Cloud
Collaboration over Consolidation in the CloudCollaboration over Consolidation in the Cloud
Collaboration over Consolidation in the Cloud
 
9 patterns of microservices
9 patterns of microservices9 patterns of microservices
9 patterns of microservices
 
building microservices
building microservicesbuilding microservices
building microservices
 
Microservices
MicroservicesMicroservices
Microservices
 

Plus de OutSystems

Plus de OutSystems (20)

Innovating at the Speed of Business in the High-Bandwidth World of Digital Media
Innovating at the Speed of Business in the High-Bandwidth World of Digital MediaInnovating at the Speed of Business in the High-Bandwidth World of Digital Media
Innovating at the Speed of Business in the High-Bandwidth World of Digital Media
 
Beyond “Location”: Informing Real-Estate Decisions Through Innovative Technology
Beyond “Location”: Informing Real-Estate Decisions Through Innovative TechnologyBeyond “Location”: Informing Real-Estate Decisions Through Innovative Technology
Beyond “Location”: Informing Real-Estate Decisions Through Innovative Technology
 
Beyond Digital Transformation: A Mandate for Disruptive Innovation in the Age...
Beyond Digital Transformation: A Mandate for Disruptive Innovation in the Age...Beyond Digital Transformation: A Mandate for Disruptive Innovation in the Age...
Beyond Digital Transformation: A Mandate for Disruptive Innovation in the Age...
 
From Core Systems to Mobile Apps: Digital Transformation from the Inside-Out
From Core Systems to Mobile Apps: Digital Transformation from the Inside-OutFrom Core Systems to Mobile Apps: Digital Transformation from the Inside-Out
From Core Systems to Mobile Apps: Digital Transformation from the Inside-Out
 
Orchestrating the Art of the Impossible Using Low-Code to Automate Manual Wor...
Orchestrating the Art of the Impossible Using Low-Code to Automate Manual Wor...Orchestrating the Art of the Impossible Using Low-Code to Automate Manual Wor...
Orchestrating the Art of the Impossible Using Low-Code to Automate Manual Wor...
 
Fast and Furious: Modernizing Clinical Application
Fast and Furious: Modernizing Clinical ApplicationFast and Furious: Modernizing Clinical Application
Fast and Furious: Modernizing Clinical Application
 
What Is Light BPT and How Can You Use it for Parallel Processing?
What Is Light BPT and How Can You Use it for Parallel Processing?What Is Light BPT and How Can You Use it for Parallel Processing?
What Is Light BPT and How Can You Use it for Parallel Processing?
 
Enrich Visually Google Map Information With Layers
Enrich Visually Google Map Information With LayersEnrich Visually Google Map Information With Layers
Enrich Visually Google Map Information With Layers
 
Using Processes and Timers for Long-Running Asynchronous Tasks
Using Processes and Timers for Long-Running Asynchronous TasksUsing Processes and Timers for Long-Running Asynchronous Tasks
Using Processes and Timers for Long-Running Asynchronous Tasks
 
Unattended OutSystems Installation
Unattended OutSystems InstallationUnattended OutSystems Installation
Unattended OutSystems Installation
 
The 4-Layer Architecture in Practice
The 4-Layer Architecture in PracticeThe 4-Layer Architecture in Practice
The 4-Layer Architecture in Practice
 
Speed up Development by Turning Web Blocks Into First-Class Citizens
Speed up Development by Turning Web Blocks Into First-Class CitizensSpeed up Development by Turning Web Blocks Into First-Class Citizens
Speed up Development by Turning Web Blocks Into First-Class Citizens
 
Service Actions
Service ActionsService Actions
Service Actions
 
Responsive Ui with Realtime Database
Responsive Ui with Realtime DatabaseResponsive Ui with Realtime Database
Responsive Ui with Realtime Database
 
Reactive Web Best Practices
Reactive Web Best PracticesReactive Web Best Practices
Reactive Web Best Practices
 
RADS - Rapid Application Design Sprint
RADS - Rapid Application Design SprintRADS - Rapid Application Design Sprint
RADS - Rapid Application Design Sprint
 
Troubleshooting Dashboard Performance
Troubleshooting Dashboard PerformanceTroubleshooting Dashboard Performance
Troubleshooting Dashboard Performance
 
OutSystems Tips and Tricks
OutSystems Tips and TricksOutSystems Tips and Tricks
OutSystems Tips and Tricks
 
No API? No Problem! Let the Robot Do Your Work! Web Scraping and Automation W...
No API? No Problem! Let the Robot Do Your Work! Web Scraping and Automation W...No API? No Problem! Let the Robot Do Your Work! Web Scraping and Automation W...
No API? No Problem! Let the Robot Do Your Work! Web Scraping and Automation W...
 
Neo in Wonderland: Essential Tools for an Outsystems Architect
Neo in Wonderland: Essential Tools for an Outsystems ArchitectNeo in Wonderland: Essential Tools for an Outsystems Architect
Neo in Wonderland: Essential Tools for an Outsystems Architect
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
"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 ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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
 
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
 

NextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes

  • 2. Francisco Menezes Technical Practices Head | OutSystems @ in francisco.menezes@outsystems.com /francisco-menezes-921626/
  • 3. The hype of microservices The fall of monoliths | Monoliths or Microservices: Make both your Domain
  • 4. No doubt about microservice advantages Improved modularity Abstraction of Business capabilities Light and ubiquitous communication Products not projects Dev team autonomy Autonomous CD / CI Environmental isolation Independent scale Stack independence | Monoliths or Microservices: Make both your Domain
  • 5. But have all the promises been fulfilled?
  • 6. A fragmented / multi-stack system comes with a price | Monoliths or Microservices: Make both your Domain
  • 7. A fragmented / multi-stack system comes with a price ● Inter-process communication network latency and hiccups, data marshalling | Monoliths or Microservices: Make both your Domain
  • 8. A fragmented / multi-stack system comes with a price ● Inter-process communication ● Multiple transactions committed independently Transaction 1 Transaction 2 Transaction 3 | Monoliths or Microservices: Make both your Domain
  • 9. A fragmented / multi-stack system comes with a price ● Inter-process communication ● Multiple transactions ● Fault tolerance communication errors, service consistency Undo | Monoliths or Microservices: Make both your Domain
  • 10. A fragmented / multi-stack system comes with a price ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup in memory and limited to API’s GetCustomers GetOrders correlate and segment | Monoliths or Microservices: Make both your Domain
  • 11. A fragmented / multi-stack system comes with a price ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security credentials and access management 🔒 🔒 🔒 | Monoliths or Microservices: Make both your Domain
  • 12. A fragmented / multi-stack system comes with a price ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security ● Debugging & troubleshooting the root cause may be deep inside the chain of services | Monoliths or Microservices: Make both your Domain
  • 13. A fragmented / multi-stack system comes with a price Monitor & Logging ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security ● Debugging & troubleshooting ● Monitor & logging effective monitoring & logging, requires a centralized service | Monoliths or Microservices: Make both your Domain
  • 14. After a degree of service proliferation ● Essential benefits become burdens ● Teams move slow mired in exploding complexity | Monoliths or Microservices: Make both your Domain
  • 15. Is there a palliative to all this pain?
  • 16. #1 Adopt a single stack ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security ● Debugging & troubleshooting ● Monitor & logging | Monoliths or Microservices: Make both your Domain
  • 17. #1 Adopt a single stack - hey, like OutSystems 11! ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security ● Debugging & troubleshooting ● Monitor & logging | Monoliths or Microservices: Make both your Domain
  • 18. #2 Don’t be fundamentalist, expose a query model ● Inter-process communication ● Multiple transactions ● Fault tolerance ● Limited data mashup ● Security ● Debugging & troubleshooting ● Monitor & logging | Monoliths or Microservices: Make both your Domain
  • 19. So, when should I adopt microservices?
  • 20. Mkt Fin HR SOFTWARE COMPLEXITY Small apps Medium sized apps Large monolith with a portfolio of core systems, services and apps Modularize UX Scale Strong reuse app grows Degradation of -ilities Teams hostage each other Deployment is way too complex and slow The growth of a software factory | Monoliths or Microservices: Make both your Domain
  • 21. Mkt Fin HR SOFTWARE COMPLEXITY Small apps Medium sized apps Large monolith with a portfolio of core systems, services and apps Modularize UX Scale Strong reuse app grows SOFTWARE COMPLEXITY Modern digital platforms organized as microservices Decoupled services Independent teams The moment to adopt microservices | Monoliths or Microservices: Make both your Domain
  • 23. 23 Domain Driven Design (DDD) DDD drives the development of complex systems, based in decoupled domains of technology artifact Independent CD/CI pipelines for different products/teams | Monoliths or Microservices: Make both your Domain
  • 24. 24 How to ensure domain independency? Group concepts by functional area or LOB [ business fit ] [ decision power ] #1 Light and stable service interfaces [ less impacts across domains ] #3 Dedicated multidisciplinary team [ ownership ] [ control ] #2 | Monoliths or Microservices: Make both your Domain
  • 25. 3 principles for a balanced architecture 2. Strong coupling inside a domain benefit tight processes inside the domain 1. Be smart with your domain boundaries base on functional area and CD/CI independence needs 3. Loose coupling across domains ensures domain independence | Monoliths or Microservices: Make both your Domain

Notes de l'éditeur

  1. Everyone wants to follow the hype of microservices, leaving monolith architectures to the abandon like old medieval castles
  2. IT’s excellively adopting microservices soon found out that essential benefits of this architecture become burdens. Instead of enabling them to move faster, the small team found himself mired in exploding complexity.
  3. Because it is much simpler, you start with strongly coupled...
  4. With OutSystems 11 improved impact analysis, this moment can be further delayed
  5. Domain Driven Design is a methodology and process prescription for the development of complex systems whose focus is mapping business processes within a problem domain into the technology artifacts of a solution domain.