How Knative Uses Concurrency and Rps (Requests per Second) For Autoscaling
summary
Knative autoscaler uses both concurrency and a new RPS metric to add or remove pods, with concrete knobs: target burst capacity ( -1 = infinite, 0 = none, default 200), container concurrency (0 means unlimited), minScale and a panic vs stable window tradeoff, and a default scale to zero 90s (plus 30s grace) that can be reduced to a 6s stable window at risk of jitter. The system samples every 2s, exposes excess burst capacity internally, and successfully scales down to zero while allowing deterministic caps on instance counts.
AI-written summary · about
chapters (10)
- 0:00Intro
- 1:10What is knative (official definition)
- 2:15Key Concepts
- 2:59Scaling with knative
- 4:29Example: Riscale
- 6:30Problem #1 (cont.)
- 9:51Example: Panic window and stable window
- 12:31Problem #2
- 15:00Problem #3
- 16:06Learn more about Knative and autoscaling
related talks
17mScaling Made Simple: Implementing Autoscaling for Optimal K8s Performance
32mScaling Kubernetes Application to 1M Users
25mUse Envoy + Knative to auto scale Java RPC micro service
34mInside Knative Serving
21mMusic Matched to Different Ways to Scale in K8s, What Could Go Wrong?
05mResource Roulette: Winning the Kubernetes Allocation Game
29mApplication AutoScaling Through Elastic Kubernetes POD
57mServerless with Knative
