SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Modular Monolith
Architecture
Aaron White
Senior Software Engineer
STEM ambassador
What are we
going to cover
• Project requirements at FRF
• Consideration and decision on architecture
styles
• Run through common architecture styles such
as monolith and microservice.
• Our architecture decision, and why its modular
• High level designs and decisions
• What are the drawbacks and how do you
overcome them
• Taking the next steps from a modular monolith
• Reflection + Q&A
Build a cloud native account
management platform to replace a
sunset legacy system.
Constraint and
Considerations
• Speed to market
• Small Team
• Limited DevOps and
microservice knowledge in team
• Small initial user count
• Small initial budget
• On premises services and DBs
• Team replacing/upgrading
another legacy system
What is a monolith?
• Tightly coupled
• Single codebase
• Deployed as a single unit
• Easy to develop and
maintain*
• Can become difficult to
manage and scale effectively.
• Remain a popular choice
What are
microservices?
• Broken down into smaller
components or services.
• Each service is designed to
perform a specific task
• Developed, tested, and
deployed independently of
one another
• More complex than
monolithic architecture
What is modular monolith?
• Hybrid of monolithic architecture
and microservices architecture.
• Each module is designed to
perform a specific task or set of
related task
• Developed, tested, and deployed
independently of one another
• Can address scalability issues
that can arise with monolithic
architectures.
• Reduce complexity
Why modular
monolith?
• Fast to market strategy
• Keep deployment model simple
• Ability to scale in future to meet user
demand – Microservices split
• Cost kept low due to single app
deployment
• Keeps boundaries clear, avoided
premature split of microservices
How we built
it!
Its not all
sunshine
• Code duplication and work arounds in API layer
• EF core migrations
• Mass transit or other package configurations
• IDE performance
How we over came
it
Created Shared module
Created readme
Move to singular API
projects
What’s next for the team?
Own API
Project
1
Containerise
each module
2
Deploy
independently
3
Create
individual
databases
4
Separate code
5
Reflection – When to use modular monolith
NEED TO BE FAST
TO MARKET
SMALL
APPLICATION
TEAM
KNOWLEDGE
BUDGET FUTURE
MICROSERVICES
Q&A
First Response Finance Careers!
https://careers.firstresponsefinance.co.uk/
Get in contact with me!
https://www.linkedin.com/in/aaronwhi/
Slide Share:

Weitere ähnliche Inhalte

Ähnlich wie DerbyDev_ModMonolith_290323.pptx

Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Microfrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased basedMicrofrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased basedVinci Rufus
 
From Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesFrom Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesMongoDB
 
Discussion About Microservices Architecture
Discussion About Microservices ArchitectureDiscussion About Microservices Architecture
Discussion About Microservices ArchitectureRalph Osmond Rimorin
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Richard Langlois P. Eng.
 
Micro Services Architecture
Micro Services ArchitectureMicro Services Architecture
Micro Services ArchitectureRabbani Mohideen
 
Software architectures
Software architecturesSoftware architectures
Software architecturesAmandeep Singh
 
Undoable architectures
Undoable architecturesUndoable architectures
Undoable architecturesGiorgio Natili
 
microservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfmicroservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfRichieBallyears
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservicesAnil Allewar
 
Migrating to Microservices Patterns and Technologies (edition 2023)
 Migrating to Microservices Patterns and Technologies (edition 2023) Migrating to Microservices Patterns and Technologies (edition 2023)
Migrating to Microservices Patterns and Technologies (edition 2023)Ahmed Misbah
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryEmilio Garcia
 
Are you ready for Microservices
Are you ready for MicroservicesAre you ready for Microservices
Are you ready for MicroservicesAsiri Liyanage
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitectureAshwini Kuntamukkala
 
Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015Ken Owens
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableComsysto Reply GmbH
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudSrinivasan Nanduri
 
DEVNET-1142 Decomposing Monolithic Applications to Microservices
DEVNET-1142	Decomposing Monolithic Applications to MicroservicesDEVNET-1142	Decomposing Monolithic Applications to Microservices
DEVNET-1142 Decomposing Monolithic Applications to MicroservicesCisco DevNet
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesAngelos Kapsimanis
 
Client Technical Analysis of Legacy Software and Future Replacement
Client Technical Analysis of Legacy Software and Future ReplacementClient Technical Analysis of Legacy Software and Future Replacement
Client Technical Analysis of Legacy Software and Future ReplacementVictorSzoltysek
 

Ähnlich wie DerbyDev_ModMonolith_290323.pptx (20)

Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Microfrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased basedMicrofrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased based
 
From Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesFrom Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 Minutes
 
Discussion About Microservices Architecture
Discussion About Microservices ArchitectureDiscussion About Microservices Architecture
Discussion About Microservices Architecture
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.
 
Micro Services Architecture
Micro Services ArchitectureMicro Services Architecture
Micro Services Architecture
 
Software architectures
Software architecturesSoftware architectures
Software architectures
 
Undoable architectures
Undoable architecturesUndoable architectures
Undoable architectures
 
microservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfmicroservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdf
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Migrating to Microservices Patterns and Technologies (edition 2023)
 Migrating to Microservices Patterns and Technologies (edition 2023) Migrating to Microservices Patterns and Technologies (edition 2023)
Migrating to Microservices Patterns and Technologies (edition 2023)
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud Foundry
 
Are you ready for Microservices
Are you ready for MicroservicesAre you ready for Microservices
Are you ready for Microservices
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices Architecture
 
Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuable
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloud
 
DEVNET-1142 Decomposing Monolithic Applications to Microservices
DEVNET-1142	Decomposing Monolithic Applications to MicroservicesDEVNET-1142	Decomposing Monolithic Applications to Microservices
DEVNET-1142 Decomposing Monolithic Applications to Microservices
 
Software Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based ArchitecturesSoftware Architectures, Week 3 - Microservice-based Architectures
Software Architectures, Week 3 - Microservice-based Architectures
 
Client Technical Analysis of Legacy Software and Future Replacement
Client Technical Analysis of Legacy Software and Future ReplacementClient Technical Analysis of Legacy Software and Future Replacement
Client Technical Analysis of Legacy Software and Future Replacement
 

Kürzlich hochgeladen

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 

Kürzlich hochgeladen (20)

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 

DerbyDev_ModMonolith_290323.pptx

  • 1. Modular Monolith Architecture Aaron White Senior Software Engineer STEM ambassador
  • 2. What are we going to cover • Project requirements at FRF • Consideration and decision on architecture styles • Run through common architecture styles such as monolith and microservice. • Our architecture decision, and why its modular • High level designs and decisions • What are the drawbacks and how do you overcome them • Taking the next steps from a modular monolith • Reflection + Q&A
  • 3. Build a cloud native account management platform to replace a sunset legacy system.
  • 4. Constraint and Considerations • Speed to market • Small Team • Limited DevOps and microservice knowledge in team • Small initial user count • Small initial budget • On premises services and DBs • Team replacing/upgrading another legacy system
  • 5.
  • 6. What is a monolith? • Tightly coupled • Single codebase • Deployed as a single unit • Easy to develop and maintain* • Can become difficult to manage and scale effectively. • Remain a popular choice
  • 7. What are microservices? • Broken down into smaller components or services. • Each service is designed to perform a specific task • Developed, tested, and deployed independently of one another • More complex than monolithic architecture
  • 8. What is modular monolith? • Hybrid of monolithic architecture and microservices architecture. • Each module is designed to perform a specific task or set of related task • Developed, tested, and deployed independently of one another • Can address scalability issues that can arise with monolithic architectures. • Reduce complexity
  • 9. Why modular monolith? • Fast to market strategy • Keep deployment model simple • Ability to scale in future to meet user demand – Microservices split • Cost kept low due to single app deployment • Keeps boundaries clear, avoided premature split of microservices
  • 11. Its not all sunshine • Code duplication and work arounds in API layer • EF core migrations • Mass transit or other package configurations • IDE performance
  • 12. How we over came it Created Shared module Created readme Move to singular API projects
  • 13. What’s next for the team? Own API Project 1 Containerise each module 2 Deploy independently 3 Create individual databases 4 Separate code 5
  • 14. Reflection – When to use modular monolith NEED TO BE FAST TO MARKET SMALL APPLICATION TEAM KNOWLEDGE BUDGET FUTURE MICROSERVICES
  • 15. Q&A First Response Finance Careers! https://careers.firstresponsefinance.co.uk/ Get in contact with me! https://www.linkedin.com/in/aaronwhi/ Slide Share:

Hinweis der Redaktion

  1. 10 years experience in enterprise software development Various roles STEM ambassador
  2. Gut reaction - Break legacy system down into microservices and slowly replace them
  3. Speed to market was critical – business slowed without legacy system User count around 20, however project to increase to thousands
  4. Gut reaction - Break legacy system down into microservices and slowly replace them
  5. A monolith architecture is a type of software architecture where all the components of an application are tightly coupled and interconnected within a single codebase . In a monolith architecture, the entire application is deployed as a single unit, meaning that any changes or updates to one component of the application require the entire application to be redeployed. Monolith architectures are often contrasted with microservices architectures, which break an application down into smaller, more modular components that can be developed, tested, and deployed independently of one another. Monolith architectures can be simpler and easier to develop and maintain than more complex architectures like microservices, especially for smaller applications or teams with limited resources. However, as applications grow larger and more complex, monolith architectures can become difficult to manage and scale effectively, leading to performance and maintenance issues. Despite their limitations, monolith architectures remain a popular choice for many applications and development teams.
  6. A microservice architecture is a type of software architecture where an application is broken down into smaller, independent components, or services. Each service in a microservice architecture is designed to perform a specific task, and communicates with other services through well-defined interfaces. Because each service in a microservice architecture is independent, they can be developed, tested, and deployed independently of one another, which can lead to faster and more efficient development. Microservice architectures are often contrasted with monolithic architectures, which deploy an entire application as a single unit. Microservice architectures are generally more complex than monolithic architectures, and require careful planning and management to ensure that services can communicate effectively and that the application as a whole can be effectively monitored and maintained. Despite their complexity, microservice architectures have become increasingly popular in recent years due to their flexibility, scalability, and ability to support agile development practices.
  7. A modular monolith architecture is a hybrid approach that combines the simplicity and ease of maintenance of a monolithic architecture with the modularity and scalability of a microservices architecture. In a modular monolith architecture, the application is still deployed as a single unit, but the codebase is organized into separate modules, each of which can be developed and deployed independently of one another. Each module in a modular monolith architecture is designed to perform a specific task or set of related tasks, and communicates with other modules through well-defined interfaces. Because each module in a modular monolith architecture is independent, they can be developed, tested, and deployed independently of one another, which can lead to faster and more efficient development. Modular monolith architectures are designed to address some of the scalability and maintenance issues that can arise with monolithic architectures as applications grow larger and more complex. While modular monolith architectures can be more complex than traditional monolithic architectures, they can also offer many of the benefits of microservices architectures without the added complexity of managing multiple services. Modular monolith architectures are becoming increasingly popular as a way to balance the simplicity of monolithic architectures with the scalability and modularity of microservices architectures.
  8. Fast to market – Need to replace legacy system, also teams will use our service in future but not now Deployment simple – Limited knowledge in team, helped with getting up to speed Future scale – ability to break way and scale module if needed Boundaries – ability to move to microservice module
  9. Gateway -> Single entry point into application / handles authentication and auth API -> Simple there to configure cross cutting concerns, downside of modular monolith Event bus -> communication between modules On prem façade- strangulate services
  10. EF core migrations – had to fully qualify context, not as quick to developer Package configuration only require one single instance made it difficult to fully separate each module – mass transit Merge issue when all working in close proximity IDE performance will decrease over time -
  11. Can break into more defined modules, i.e. each have own API and startup
  12. Gateway -> Single entry point into application / handles authentication and auth API -> Simple there to configure cross cutting concerns, downside of modular monolith Event bus -> communication between modules On prem façade- strangulate services