Architectural patterns for modular monoliths that enable fast flow
You are receiving this email because you subscribed to microservices.io
This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team Topologies: 9am-11am CET/4pm-7pm Korea Time, September 23th-25th, 2024 20% discount for groups of 6 or more.
In November, I'll be teaching workshops in Berlin and Milan. If you would like me to visit your company for workshop or architecture review, please contact me.
In this article, I describe three architectural patterns for modular monoliths. These patterns are based on my experience developing both monoliths and microservices.
Designing monoliths for fast flow
The primary concerns when using the monolithic architecture pattern are:
- Managing the complexity of a large codebase
- Maximizing team autonomy despite the single code base
- Accelerating the single deployment pipeline in order to still provide fast feedback
There are three patterns that address these concerns:
- Modular monolith, aka. domain-oriented monolith
- Domain module API
- Domain API build module
Let’s first look at the modular monolith pattern.
Pattern: Modular monolith, aka. domain-oriented monolith
Organize a monolith as a collection of loosely coupled, domain modules that are based on DDD subdomains/bounded context rather than technical layers in order to manage complexity and improve team autonomy.
For more information, see The modular monolith, which introduces the basic idea, and No such thing as a modular monolith, which explains why the term ‘modular monolith’ is a misnomer.
Pattern: Domain module API
Encapsulate each domain module’s implementations details, which includes its database schema, behind a stable, facade-style API in order to reduce loose design-time coupling between modules and improve testability.
For more information, see Encapsulating the customers
domain behind a facade.
Pattern: Domain API build module
Define a separate build module (e.g. Gradle subproject) for the domain module’s API, which the domain module’s clients depend upon (rather than the implementation), in order to reduce build-time coupling and accelerate the deployment pipeline.
For more information, see Using domain API modules to reduce build-time coupling.
Want to learn more
You will learn about these and other patterns in my Architecting for fast flow: enabling DevOps and Team Topologies workshop, 9am-11am CET/4pm-7pm Korea Time, September 23th-25th, 2024. 20% discount for groups of 6 or more.
Need help with accelerating software delivery?
I’m available to help your organization improve agility and competitiveness through better software architecture: training workshops, architecture reviews, etc.
Learn more about how I can help
Older messages
Reminder: Architecting microservices for fast, sustainable flow
Thursday, September 5, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Architecting microservices for fast, sustainable flow
Tuesday, September 3, 2024
You are receiving this email because you subscribed to microservices.io This month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Architecting monoliths for fast, sustainable flow
Thursday, August 22, 2024
You are receiving this email because you subscribed to microservices.io Next month, I'm teaching an online public workshop Architecting for fast, sustainable flow: enabling DevOps and Team
Reminder: Why architecting for fast, sustainable flow is important
Tuesday, August 20, 2024
You are receiving this email because you subscribed to microservices.io Next month, I'm teaching an online public workshop: Architecting for fast, sustainable flow: Enabling DevOps and Team
Why architecting for fast, sustainable flow is important
Tuesday, August 20, 2024
You are receiving this email because you subscribed to microservices.io Next month, I'm teaching an online public workshop: Architecting for fast, sustainable flow: Enabling DevOps and Team
You Might Also Like
Know What You Control 🪰
Wednesday, November 6, 2024
How a bug-fixing endeavor gave me a good POV on election night. Here's a version for your browser. Hunting for the end of the long tail • November 06, 2024 Know What You Control If you're stuck
Spyglass Dispatch 003: Lina Gone • Prediction Market Victory Laps • TikTok Saved? • Apple's Smarter AI • The Return of Tim Apple
Wednesday, November 6, 2024
Lina Gone • Prediction Market Victory Laps • TikTok Saved? • Apple's Smarter AI • The Return of Tim Apple The Spyglass Dispatch is a free newsletter sent out daily on weekdays. Feel free to forward
Top Tech Deals 💰 $20 Monster Earbuds, TCL TVs, Anker Power Station, and More
Wednesday, November 6, 2024
Pre-Black Friday deals you won't want to miss. How-To Geek Logo November 6, 2024 Top Tech Deals: $20 Monster Earbuds, TCL TVs, Anker Power Station, and More Pre-Black Friday deals you won't
Zuzalu is Dead. Long Live Zuzalu! - Metamorphosis Commenced v3
Wednesday, November 6, 2024
Top Tech Content sent at Noon! NODES 2024, a Dev Conference on AI, Knowledge Graphs & Apps Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today,
The best open-source AI models
Wednesday, November 6, 2024
Drone flight goggles; Kindle Paperwhite hands-on; Best laptop deals -- ZDNET ZDNET Tech Today - US November 6, 2024 ai concept The best open-source AI models: All your free-to-use options explained
Bolster Your Cyber Defenses with CIS Controls v8.1
Wednesday, November 6, 2024
Key changes to help you mature your cybersecurity posture...
Reducing insider trading in a microservice architecture
Wednesday, November 6, 2024
You are receiving this email because you subscribed to microservices.io In November, I'll be teaching public workshops in Berlin and Milan. I hope you will enroll. My service collaboration patterns
INTERPOL Disrupts Over 22,000 Malicious Servers in Global Crackdown on Cybercrime
Wednesday, November 6, 2024
THN Daily Updates Newsletter cover Introduction to Algorithms: A Comprehensive Guide for Beginners: Unlocking Computational Thinking ($34.99 Value) FREE for a Limited Time Begin your journey into the
Post from Syncfusion Blogs on 11/06/2024
Wednesday, November 6, 2024
New blogs from Syncfusion Visualize US Gulf Coast Kerosene-Type Jet Fuel Prices with .NET MAUI Fast Line Chart By Arul Jenith Berkmans This blog explains how to visualize US Gulf Coast jet fuel prices
⚙️ Anthropic price hike
Wednesday, November 6, 2024
Plus: A different kind of legal AI