Fundamentals 12 min read

Why Layered Monoliths Still Matter: From 4‑Layer to Modular 5‑Layer Architecture

This article examines layered monolithic architecture styles, comparing classic four‑layer designs with five‑layer variants, discussing their benefits, trade‑offs, impact on complexity, change isolation, and how modular thinking can bridge the gap between technical layers and business domains.

JD Cloud Developers
JD Cloud Developers
JD Cloud Developers
Why Layered Monoliths Still Matter: From 4‑Layer to Modular 5‑Layer Architecture

1. Classic Four‑Layer Monolithic Architecture

The classic four‑layer monolithic architecture divides an application into Presentation, Business, Persistence, and Data Storage layers, each with distinct responsibilities:

Presentation layer: Displays information to end users and captures input that triggers business logic.

Business layer: Implements core business logic.

Persistence layer: Handles data access.

Data storage layer: Underlying storage infrastructure.

This style is familiar to many developers. Its key characteristics are:

Strict top‑down dependencies; each layer must be traversed for data flow.

Clear separation of concerns: each layer focuses only on its own responsibilities.

In addition to concern separation, layers also isolate change: lower layers change slowly, upper layers change quickly, reducing the impact of low‑level modifications on higher layers.

1.2 Five‑Layer Monolithic Architecture

The four‑layer model faces two main issues:

Inter‑layer data efficiency problems due to strict call constraints.

Limited reuse of services within the business layer.

To improve reuse, a five‑layer architecture introduces a General Service layer that consolidates shared services, allowing the business layer to call lower layers directly when needed.

Advantages over the four‑layer approach include better reuse through the intermediate layer, but drawbacks appear:

Added layer reduces data transmission efficiency and raises implementation cost.

Open General Service layer can lead to uncontrolled cross‑layer calls, increasing system complexity and cognitive load.

2. Common Issues in Monolithic Layered Architecture

Despite its popularity, many developers misunderstand layering, treating it as a default choice without considering its true purpose: managing complexity by abstracting responsibilities and controlling change propagation.

2.1 Impact on System Complexity and Efficiency

Layers with different change rates mean upper layers evolve quickly while lower layers remain stable. More layers clarify dependencies but increase call chain length and data transformation overhead.

Strict layering improves clarity but may hinder performance; allowing cross‑layer calls can reduce transformation cost but introduces inconsistency and harder governance.

2.2 Change Isolation

Layering is often assumed to fully isolate changes (e.g., swapping a database or ORM). In practice, isolation only works when layers depend on abstractions, not concrete implementations, and even then changes can ripple upward.

2.3 Gap Between Problem Domain and Solution

Layered monoliths separate concerns from a technical perspective, not a business‑domain perspective. For example, an "Order" component is scattered across Controller, Service, and DAO layers, increasing cognitive cost when navigating the codebase.

Applying component‑oriented thinking to monolithic layering leads to a modular monolith, where modules are organized by business domain rather than technical tier, facilitating clearer interfaces and smoother migration to microservices.

3. Conclusion

Layered monolithic architecture applies the layering concept to monoliths, focusing on technical responsibility separation and change control. However, this technical focus creates a gap between problem domain and implementation, raising system cognitive complexity. Introducing modular thinking aligns layers with business domains, reducing this gap and providing a solid foundation for future microservice decomposition.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Backendmodularizationlayered architecturesoftware designmonolith
JD Cloud Developers
Written by

JD Cloud Developers

JD Cloud Developers (Developer of JD Technology) is a JD Technology Group platform offering technical sharing and communication for AI, cloud computing, IoT and related developers. It publishes JD product technical information, industry content, and tech event news. Embrace technology and partner with developers to envision the future.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.