Menu

Earn Premium with Referrals

Invite your friends and earn Premium rewards through our referral program.

See how it works and start inviting friends.

Why Service Mesh
HLD

Why Service Mesh

The problem meshes solve — service-to-service concerns that outgrew libraries and ingress tiers.

The Problem Evolution

 stage 1 — few services:
   HTTP calls with a shared client library. done.

 stage 2 — the estate grows (polyglot, many teams):
   every cross-cutting need multiplies by LANGUAGE COUNT:

   need              java-lib  go-lib  py-lib  node-lib...
   retries/timeouts     ✓        ✓       ?        ?
   mTLS                 ✓        ?       ✗        ?
   metrics/traces       ✓        ✓      half      ?
   circuit breaking     ✓       roll    ✗        ?

   drift is inevitable: python's retry policy ≠ go's.
   security fixes = N dependency upgrades × M services.

The Mesh Answer

 move ALL service-to-service plumbing OUT of application
 code into a dedicated infrastructure layer:

 [app]──localhost──►[proxy sidecar]══mTLS══►[peer proxy]──►[app]

                   [control plane] pushes config/policy/certs

 capabilities become FLEET-WIDE POLICY, not per-language code:

 □ mutual TLS + identity everywhere (zero app changes)
 □ uniform retries/timeouts/breaking as declarative config
 □ L7 routing: canaries, mirroring, header-based splits
 □ consistent golden telemetry from every hop

 write once in the mesh; all languages inherit.

The Trade You’re Making

 GAINS: consistency, security defaults, traffic control,
        polyglot peace — real and compounding with scale.

 COSTS: proxies on every pod (CPU/RAM), an extra hop,
        a control plane to operate, NEW failure/debug modes,
        organizational learning curve.

 the honest decision rule:
   <10-20 homogeneous services → libraries are cheaper;
   polyglot estates with compliance needs → mesh earns it.
   adopting because "Netflix/K8s does" = ceremony tax.

What Mesh Is NOT

 ✗ a business-logic tier (services stay owners of logic)
 ✗ an API gateway replacement (north-south vs east-west —
   complementary edges of the traffic picture)
 ✗ magic observability (it gives STRUCTURE; you still design
   dashboards/alerts)
 ✗ automatic resilience correctness — bad timeout policy in
   YAML fails exactly like bad code did

Interview Framing

“Do we need a service mesh?” scored shape: name the library-drift problem as THE motivation, draw data/control planes briefly, present gains AND costs symmetrically, give the size-based decision rule, distinguish east-west from north-south. This question grades whether you adopt infrastructure from PROPERTIES or FASHION — show the arithmetic either way.

My Private Notes

Notes are auto-saved locally to this device.