Microservices
Also known as:
Microservice Architecture
Service Oriented Architecture
Definition
Microservices is an architecture that splits an application into small, independently deployable services, each owning one business capability and its own data. Services talk over the network through APIs or a message queue, so teams can build, deploy, and scale each one on its own instead of shipping one big monolith.
Popular reads
View All
Payment System Design: Ledger, Idempotency, and Settlement
Jul 18, 2026
X Algorithm Explained: How the Open Source Recommendation System Works
Jan 22, 2026
Cursor Skills: How to Create and Use Agent Skills
Jun 23, 2026
Complete Guide to Graph Data Structure: BFS, DFS, Adjacency List vs Matrix
Jan 20, 2026
The Complete HTMX Guide: From Zero to Production
Dec 22, 2025
Transactional Outbox Pattern: Never Lose an Event Again
Apr 07, 2026
Key Takeaways
- Each service is deployed and scaled on its own. A traffic spike in one area does not force you to scale everything.
- The cost is distributed systems complexity: network calls, partial failures, and data spread across many stores.
- A transaction across services cannot use one database transaction, so you reach for the saga pattern instead.
- Most teams should start with a modular monolith and split out services only when the boundaries and the pain are clear.
How It Works
- The domain is broken into services along business capabilities, like payments, search, or notifications.
- Each service owns its data and exposes an API, often behind a load balancer and gateway.
- Services communicate synchronously over HTTP or gRPC, or asynchronously through a message queue.
- Cross-service workflows use choreography or orchestration with sagas to keep data eventually consistent.
Where It Is Used
- Netflix, Amazon, and Uber run thousands of microservices behind API gateways and service meshes.
- Shopify and others keep a large modular core and peel off services only where it pays off.
- Kubernetes has become the default platform for deploying and scaling microservices.