Skip to content

What is a microservices architecture? Definition and trade-offs

A microservices architecture splits an application into autonomous services, each owning a narrow business scope and deployable on its own. They talk over the network — usually via APIs — instead of shipping one monolithic executable. The goal is flexible evolution and targeted scaling, at the cost of higher operational complexity.

In one sentence

Microservices are several specialized programs cooperating, rather than one large block.

Key points

  • Each service has its own release cycle and ideally its own datastore.
  • Boundaries follow business capabilities (billing, catalog, notifications), not only technical layers.
  • Resilience requires handling network failure, timeouts and eventual consistency.
  • Not a day-one requirement: many successful products start monolithic.

Term at a glance

Microservices architecture
Architecture microservices
French term
Architecture microservices
Domain
Web development
Category
Architecture
Level
Intermediate to advanced

Why microservices?

Large web platforms popularized the style to evolve teams and traffic without freezing the whole system on every release. Payment can ship a fix on Tuesday while catalog ships a feature on Thursday.

That freedom has hidden costs: distributed observability, API versioning, harder end-to-end tests, sometimes duplicated data. Without DevOps culture and automation, microservices amplify chaos.

For a growing organization the question is when monolith pain exceeds distribution cost. Common triggers: risky monthly deploys, teams stepping on each other, need to scale one function (PDF generation, search).

How do you structure microservices?

  1. 01

    Find bounded contexts

    Split by business language: what changes together stays together.

  2. 02

    Define API contracts

    Versioning, message schemas, idempotency — communication becomes the fragile contract.

  3. 03

    Automate pipelines

    CI/CD per service, containers or PaaS, contract tests between teams.

  4. 04

    Observe in production

    Distributed traces, correlated logs, per-service alerts — otherwise debugging is guesswork.

A concrete example

An online training platform splits auth, course catalog, video and billing. Saturday morning peaks hit video — scale that service without duplicating the whole app. A billing/access bug still spans three log systems — proof the architecture needs tooling and discipline.

When it makes sense

Multiple teams on one product

Fewer merge conflicts and faster domain releases.

Uneven load

Scale one component (queue, transcoding) without oversizing everything.

Gradual modernization

Extract a legacy module while the monolith keeps running.

Different availability needs

Harden one critical service without rewriting all.

Benefits and limits

  • Independent deploys and teams aligned to domains
  • Fine-grained scaling
  • Possible tech heterogeneity (within reason)
  • Better fault isolation when designed well
  • Network complexity, latency, data consistency
  • Infrastructure and skills cost (orchestration, observability)
  • Heavier end-to-end testing
  • Risk of unmaintainable nano-services

Microservices or monolith?

Microservices architectureMonolithic architecture
DeploymentPer service, more frequentSingle artifact, often weekly or monthly
DataSeparate stores, sync via APIShared database, simple ACID transactions
Project startExpensive without automationFast for MVP or SMB
ObservabilityDistributed tracing requiredCentral logs often enough

What leadership should know

Choosing microservices for hype is a classic budget and schedule trap. The architecture pays off when product or team growth makes the monolith unmanageable. Until then, a well-structured monolith (clear modules, tests, CI) is the most cost-effective choice for most organizations.

Frequently asked

Do microservices require Kubernetes?

No. Managed PaaS, a small container cluster or serverless can suffice. Kubernetes helps at large scale, not for a first split.

How many services is normal?

No magic number. Few well-bounded services beat dozens of tiny ones. Add when pain justifies it.

What about data consistency?

Eventual consistency (sagas, messaging) often replaces global transactions — document that as a business choice.

Related terms

Sources and references

Is your monolith slowing releases? We can assess whether a gradual split makes sense.

Discuss your architecture
Glossary