Distributed Monolith
Kind: anti-pattern
Layer: Enforcement Core
Record: architecture:distributed-monolith
Severity: discouraged
Scope: modularity, contract_compatibility, state_transaction
Formed by: Split deployment units without splitting data ownership, transaction boundaries, failure isolation, contracts, or autonomous release capability.
Canonical: Ontology
A defect in which services are deployed separately but still share data, transactions and release cycles.
Listed in Architecture principles, after Unversioned Breaking Change and before Shotgun Surgery.
Refactored by
- Own Data per Service
- Define Contract
- Domain Events
- Outbox Pattern
- Split Bounded Context
- Backward-Compatible Change