Microservices architecture is a way to build an application as a set of smaller services. Each service focuses on a specific business capability and communicates with other services through APIs or messages.

Why microservices are used

Microservices can make large systems easier to change, scale, and deploy independently. They fit well with containers, cloud-native platforms, and automated delivery pipelines.

The tradeoff

Microservices add complexity in networking, testing, data consistency, monitoring, and reliability. Good observability becomes especially important.

Microservices are useful when independent service ownership matters more than simple architecture.