What is a Microservice
A microservice is an independently deployable service that owns its own data, communicates with other services over the network, and is focused on a single area of business functionality.
How it works
In a microservices architecture, the system is split into multiple services. Each service has its own codebase, its own database, and its own deployment pipeline. Services communicate via REST, gRPC, or asynchronous messaging through an event bus.
The boundary of each service is typically a bounded context — a domain concept from Domain-Driven Design. The order service owns orders. The inventory service owns stock levels. Neither reaches into the other's database.
Why it matters
Microservices allow teams to deploy, scale, and evolve services independently. A team can ship a fix to the payment service without waiting for the catalog team. The payment service can scale to 20 instances while the admin service runs on one.
The tradeoff is operational complexity. Instead of one deployment, you manage dozens. Instead of local function calls, you deal with network latency, partial failures, and distributed transactions.
For the full architecture comparison, see How Microservices Work.