dev-tools
Glossary ↗Service Mesh
A service mesh is a dedicated infrastructure layer that handles communication between the services in a microservices application, so individual services don't have to. Instead of baking retries, encryption, timeouts, and traffic routing into each service's code, a mesh injects a lightweight proxy (a "sidecar," usually Envoy) next to every service; those proxies form a data plane that intercepts all traffic, while a control plane (Istio, Linkerd, Consul) configures them centrally. Practically, this gives you mutual TLS between services, automatic retries and circuit breaking, fine-grained traffic splitting for canary releases, and per-request telemetry — without changing application code. For SaaS builders, the honest tradeoff is complexity: a mesh earns its keep once you have dozens of services and a platform team, but it's overkill for a handful of services or a monolith. Start with the observability and mTLS you actually need, and reach for a mesh when service-to-service traffic becomes genuinely hard to reason about.
Related terms