| name | monolith |
| description | Monolithic architecture single deployment. Use for simple systems. |
Monolith (Traditional)
A Monolithic architecture is built as a single unit. All functional components (UI, Business Logic, Data Access) are tightly integrated using a shared database and running in the same process.
When to Use
- Proof of Concept (PoC) or MVP.
- Very small teams (< 5 developers).
- Simple CRUD applications with low complexity.
- When latency must be absolute zero and throughput is not the bottleneck.
Quick Start
def create_order(request):
user = User.objects.get(id=request.user_id)
product = Product.objects.get(id=request.product_id)
order = Order.create(user=user, product=product)
EmailService.send_confirmation(user)
return Response("Order Created")
Core Concepts
Single Process
The entire app runs in one memory space. Scaling means "Vertical Scaling" (bigger server) or "Horizontal Scaling" (cloning the entire monolith behind a load balancer).
Shared Database
All components read/write to the same massive database. JOINs across any domains are easy and performant.