FANDOM


docs Edit

linkerd offical doc Edit

dtab Edit

finagle Edit

Service Mesh Docs Edit

  • What is service mesh

a service mesh is a layer that manages the communication between apps (or between parts of the same app, e.g. microservices). In traditional apps, this logic is built directly into the application itself: retries and timeouts, monitoring/visibility, tracing, service discovery, etc. are all hard-coded into each application.

  • A service mesh like linkerd provides critical features to multi-service applications running at scale:
  1. Baseline resilience: retry budgets, deadlines, circuit-breaking
  2. Top-line service metrics: success rates, request volumes, and latencies.
  3. latency and failure tolerance: Failure- and latency-aware load balancing that can route around slow or broken service instances.
  4. Distributed tracing a la Zipkin and OpenTracing
  5. Service discovery: locate destination instances.
  6. Protocol upgrades: wrapping cross-network communication in TLS, or converting HTTP/1.1 to HTTP/2.0.
  7. Routing: route requests between different versions of services, failover between clusters, etc.
Community content is available under CC-BY-SA unless otherwise noted.