-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsteady-100k.yaml
More file actions
70 lines (64 loc) · 1.95 KB
/
Copy pathsteady-100k.yaml
File metadata and controls
70 lines (64 loc) · 1.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# IngestBench v2 — target-shaped throughput config
#
# PURPOSE: Exercises the ~100k EPS target shape: 500-event batches, 190 req/s
# ceiling (12 000 req/min fixed-window headroom), 1 M events.
#
# MEASURED PERFORMANCE (Apple M5, Go 1.23.0):
# The generation pipeline renders aws.cloudtrail events at ~65 000 events/s
# single-threaded (~372 allocs/event, CloudTrail template). At 500 events/batch
# that delivers ~130 batches/s — the rate-limiter ceiling (190 req/s) is never
# the binding constraint. Achieved EPS against the mock is ~65 500 with zero
# 429s and zero event loss across 1 M events.
#
# The gap to 100k EPS is generation-limited, not transport-limited. Closing
# it is a known follow-up: generation optimisation + parallel generation (Phase 2).
#
# THROUGHPUT CAVEAT: live-run throughput is network/NIC-bound on a laptop.
# The benchmark numbers above are measured against an in-process mock server.
#
# USAGE:
# export IB_TOKEN=<your-token>
# ingestbench validate --config examples/steady-100k.yaml
# ingestbench run --config examples/steady-100k.yaml
schema_version: "1.0"
name: steady-100k
seed: 1
mode: realtime
target:
url: https://collector.example.com/lphc/events/json
auth:
scheme: x-api-key
token_env: IB_TOKEN
tls:
verify: true
batch:
max_events: 500
max_bytes: 512KB
compression: none
limits:
# 190 req/s leaves headroom below the verified 12 000 req/min LPHC ceiling.
max_requests_per_sec: 190
fixed_window: 1m
retry:
max_attempts: 5
backoff: exponential
circuit_breaker: true
source:
id: aws.cloudtrail
version: ">=1.0"
entities:
hosts: 500
users: 100
workload:
profile: steady
# Target EPS; achieved EPS is currently ~65k (generation-limited).
eps: 65000
stop:
total_events: 1000000
observability:
dashboard: true
prometheus: "127.0.0.1:9090"
report: /tmp/ingestbench-100k-report.json
slo:
min_success_rate: 0.999
max_p95_ms: 250