Skip to content

Commit a637b5b

Browse files
authored
Merge pull request #20 from Fedosin/burst-mode
Rename panic to burst
2 parents b458492 + d574eaf commit a637b5b

File tree

19 files changed

+407
-407
lines changed

19 files changed

+407
-407
lines changed

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
This library extracts the battle-tested autoscaling algorithms from Knative Serving, making them available for use in custom Kubernetes controllers without requiring the full Knative stack. It provides:
1111

1212
- **Sliding window metric aggregation** for stable scaling decisions
13-
- **Panic mode** for handling traffic spikes
13+
- **Burst mode** for handling traffic spikes
1414
- **Configurable scale-up/down rates** to prevent flapping
1515
- **Scale-to-zero capabilities** with grace periods
1616
- **Support for multiple metrics**
@@ -50,7 +50,7 @@ func main() {
5050
// Create a metric snapshot (in real usage, collect from pods)
5151
snapshot := metrics.NewMetricSnapshot(
5252
150.0, // stable value (e.g., total concurrent requests)
53-
200.0, // panic value
53+
200.0, // burst value
5454
3, // current ready pods
5555
time.Now(),
5656
)
@@ -70,7 +70,7 @@ func main() {
7070

7171
- **`api/`** - Core types, interfaces, and data structures for the autoscaler
7272
- **`config/`** - Configuration loading and validation from environment variables or maps
73-
- **`algorithm/`** - Autoscaling algorithm implementations (sliding window, panic mode)
73+
- **`algorithm/`** - Autoscaling algorithm implementations (sliding window, burst mode)
7474
- **`metrics/`** - Time-windowed metric collection and aggregation
7575
- **`transmitter/`** - Metric reporting interfaces for monitoring integration
7676
- **`maxtimewindow/`** - Time window collection and aggregation
@@ -88,8 +88,8 @@ func main() {
8888
### Sliding Window Algorithm
8989
The core algorithm uses configurable time windows to aggregate metrics and make scaling decisions based on stable, averaged values rather than instantaneous spikes.
9090

91-
### Panic Mode
92-
When load exceeds a configurable threshold, the autoscaler enters "panic mode" where it scales more aggressively and prevents scale-downs until the load stabilizes.
91+
### Burst Mode
92+
When load exceeds a configurable threshold, the autoscaler enters "burst mode" where it scales more aggressively and prevents scale-downs until the load stabilizes.
9393

9494
### Scale Bounds and Rates
9595
Configure minimum/maximum pod counts and control how fast the autoscaler can scale up or down to prevent resource thrashing.
@@ -111,7 +111,7 @@ The library can be configured through environment variables (with `AUTOSCALER_`
111111
- `AUTOSCALER_TARGET_VALUE`: Target metric value per pod (mutually exclusive with `TOTAL_TARGET_VALUE`)
112112
- `AUTOSCALER_TOTAL_TARGET_VALUE`: Total target metric value across all pods (mutually exclusive with `TARGET_VALUE`)
113113
- `AUTOSCALER_STABLE_WINDOW`: Time window for metric averaging (default: 60s)
114-
- `AUTOSCALER_PANIC_THRESHOLD_PERCENTAGE`: When to enter panic mode (default: 200%)
114+
- `AUTOSCALER_BURST_THRESHOLD_PERCENTAGE`: When to enter burst mode (default: 200%)
115115

116116
See [CONFIGURATION.md](docs/CONFIGURATION.md) for the complete list.
117117

0 commit comments

Comments
 (0)