EnvoyIstio

Excessive worker threads cause unnecessary baseline CPU consumption

warning
performanceUpdated Feb 24, 2026(via Exa)
How to detect:

Envoy creates one worker thread per CPU core visible to the container by default. With a CPU limit of 4 cores, Envoy spawns 4 worker threads even if workload only needs 1-2. Each idle worker thread consumes CPU for event loop processing. For services handling under 1000 requests per second, excess workers waste CPU.

Recommended action:

Set proxy.istio.io/config concurrency annotation to 2 for services handling under 1000 RPS. Configure globally via IstioOperator meshConfig.defaultConfig.concurrency: 2. This directly lowers baseline CPU usage by reducing idle worker thread overhead.