Repository navigation
·
18 commits
to develop
since this release
๐ Highlights
- Redis Pub/Sub ์ฑ๋ ์ค๋ฉ:
user_idํด์ ๊ธฐ๋ฐ ์ฑ๋ ๋ถ์ฐ์ผ๋ก Hot Key ๋ฌธ์ ํด๊ฒฐ - VU 500-1000 ๋ถํ ํ ์คํธ ์๋ฃ: OpenAI Tier 4 ํ๊ฒฝ์์ VU 900๊น์ง 99.7% ์ฑ๊ณต๋ฅ ๋ฌ์ฑ
- KEDA ScaledObject ์ต์ ํ: minReplicas 1โ2 (Cold Start ๋ฐฉ์ง), maxReplicas 3โ5 (์ฒ๋ฆฌ๋ ํ์ฅ)
๐ Performance Results
| VU | ์ฑ๊ณต๋ฅ | ์คํจ | E2E P95 | Throughput | Worker Restart |
|---|---|---|---|---|---|
| 500 | 99.7% | 4 | 92.3s | 351.9 req/m | No |
| 600 | 99.7% | 4 | 108.3s | 351.9 req/m | No |
| 700 | 99.2% | 11 | 122.3s | 329.1 req/m | No |
| 800 | 99.7% | 4 | 144.6s | 367.3 req/m | No |
| 900 | 99.7% | 4 | 149.6s | 405.5 req/m | No |
| 1000 | 97.8% | 33 | 173.3s | 373.4 req/m | Yes |
๊ถ์ฅ ์ด์ ๋ฒ์: VU 50-900 (99%+ ์ฑ๊ณต๋ฅ )
โจ What's New
Added
-
Redis Pub/Sub ์ฑ๋ ์ค๋ฉ
sse:events:{user_id}โsse:events:{hash(user_id) % 8}- Hot Key ๋ฐฉ์ง๋ก Pub/Sub ์ฒ๋ฆฌ๋ ๊ฐ์
-
VU 500-1000 ๋ถํ ํ ์คํธ ๋ฆฌํฌํธ
docs/blogs/tests/2026-01-27-scan-load-test-vu800.mddocs/blogs/tests/2026-01-27-scan-load-test-vu900.mddocs/blogs/tests/2026-01-27-scan-load-test-vu1000-final.md
Changed
- KEDA ScaledObject ์ต์ ํ (scan-worker)
- minReplicas: 1 โ 2 (Cold Start ๋ฐฉ์ง)
- maxReplicas: 3 โ 5 (์ฒ๋ฆฌ๋ 67% ์ฆ๊ฐ)
- Multi-Node ๋ถ์ฐ: k8s-worker-ai + k8s-worker-ai-2
Fixed
- Cold Start ์ฅ์ ๋ฐฉ์ง
- minReplicas 2๋ก ์ค์ ํ์ฌ VU 800+ ๋ถํ ์ Cascading Failure ๋ฐฉ์ง
- ์คํจ์จ 37.7% ๊ฐ์ (VU 1000 ๊ธฐ์ค 53๊ฑด โ 33๊ฑด)
๐ Key Findings
๋ณ๋ชฉ ๋ถ์
| Priority | Component | Status |
|---|---|---|
| 1 | Celery Probe | โ I/O-bound ์ํฉ ์ทจ์ฝ |
| 2 | Worker Concurrency | |
| 3 | Node CPU/Memory | โ ์ฌ์ (60%/46%) |
| 4 | OpenAI TPM | โ 61% ์ฌ์ฉ (39% headroom) |
๊ถ์ฅ ์กฐ์น
- Short-term: Probe timeout 30s๋ก ์ฆ๊ฐ
- Medium-term: maxReplicas 7-8, Worker Node ์ถ๊ฐ
- Long-term: HTTP Health Endpoint๋ก ์ ํ
๐ Documentation
Full Changelog: v1.1.0...v1.1.1