Monoliths vs Microservices

Harry · 14 Sep 2026 · 2 views
Advertisement
Advertisement

The monolith

A monolith is a single deployable application that contains all the features – orders, users, billing, inventory – built and released as one unit, usually talking to one database. Monoliths are simple to start with and easy to run locally, which is why almost every system should begin as one.

The microservice alternative

Microservices split that application into a set of small, independent services, each owning one business capability and its own data, communicating over the network. Each service can be developed, deployed and scaled on its own.

A single monolith versus several independent services each with their own database

What you gain

  • Independent deployment: ship the orders service without redeploying everything.
  • Independent scaling: scale only the service under load.
  • Technology freedom: each service can use the language and database that fit it.
  • Fault isolation: one failing service need not take the whole system down.
  • Team autonomy: small teams own services end to end.

What you pay

Microservices trade code complexity for operational complexity. You now have a distributed system: network calls fail, data is spread across services, and testing, monitoring and deployment are harder. The famous advice is “don’t start with microservices” – extract them from a monolith once the boundaries and the pain are clear.

Key points

  • A monolith is one deployable unit; microservices are many independent services.
  • Microservices enable independent deployment, scaling and technology choices.
  • The cost is operational: distributed systems are harder to build and run.
  • Start with a monolith and split it only when the benefits clearly outweigh the cost.
Share this post:

Comments (0)

Please login or register to comment.