Microservices

Definition

Building applications as small, independent services that work together, allowing for greater flexibility, scalability, and easier maintenance.

Use Cases

Provider Equivalents

Frequently Asked Questions

What's the difference between microservices and monolithic architecture?
A monolith is one application where features are packaged and deployed together. Microservices split the application into smaller services that can be developed, deployed, and scaled independently. Microservices can improve agility and scaling, but they add complexity in networking, monitoring, and operations.
When should I use microservices?
Use microservices when you need independent scaling, frequent deployments by multiple teams, and clear separation of business domains (for example, payments vs. recommendations). If your product is early-stage, your team is small, or the system is simple, a well-structured monolith is often faster and cheaper to build and operate.
How much do microservices cost?
Microservices don’t have a fixed price; costs come from the infrastructure and operational tooling needed to run many services. Key cost drivers include compute (VMs/containers/Kubernetes nodes), load balancing and API gateways, network traffic between services, managed databases and caches per service, observability (logs/metrics/traces), CI/CD pipelines, and additional engineering time to manage reliability and security across many components.

Category: software

Difficulty: advanced

Related Terms

See Also