23 lines
1.3 KiB
Markdown
23 lines
1.3 KiB
Markdown
# Стресс прод: 100KB прямой POST — 83% таймаутов (2026-08-26)
|
|
|
|
## Прогон
|
|
|
|
`stress_http.py --url https://contractor.pythonk8s.dev.nubes.ru --n 300 --threads 20 --size 100000`
|
|
(файл `load.docx`, невалидный, 100KB)
|
|
|
|
Результат: `ok=51, err=249, timeouts=249, elapsed=398.5s, rps=0.8`.
|
|
|
|
## Находка
|
|
|
|
- **100KB прямой POST `/upload` через managed-шлюз → 83% обрывов** (таймауты ~30с).
|
|
- Подтверждает известное ограничение платформы: **шлюз рвёт тело >~64KB**
|
|
(история 2026-08-18, ingress-аннотация / client_max_body_size).
|
|
- Это НЕ деградация приложения: под почти не грузился (CPU 15m, MEM 66Mi) — обрывает внешний шлюз.
|
|
- Именно поэтому и внедрён **VM-буфер** (PUT на ВМ WebDAV → egress GET): прямой большой
|
|
POST через шлюз для прода непригоден.
|
|
|
|
## Вывод
|
|
|
|
- Стресс `/upload` валиден только файлами **< 64KB** (реальные документы 17–36KB).
|
|
- Большие файлы — только через VM-буфер (`/api/upload_refs`), не прямым POST.
|