.NET Architecture & System Design Interview Question #124

What is a distributed monolith?

Microservices, API Gateway, Service Communication & Event-Driven Architecture Mid-Level Intermediate

Quick Interview Answer

A distributed monolith is a system split into multiple deployable services that remain so tightly coupled that they must change, deploy, or be available together.

Detailed Explanation

A distributed monolith is a system split into multiple deployable services that remain so tightly coupled that they must change, deploy, or be available together.

It combines many operational costs of microservices with much of the coupling of a monolith. Warning signs include shared databases, synchronous call chains, coordinated releases, and excessive knowledge of other services' internals.

Code Example

Service A -> B -> C -> D
    |       shared assumptions
    |       coordinated releases
    v
Shared DB

Separate processes, weak autonomy.