v0.0.62: лимиты 50МБ/файл, 500МБ/сессия (фронт+бэк), лимиты в UI
Deploy drhider / validate (push) Canceled after 0s
Deploy drhider / validate (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# 2026-08-24 — Лимиты: 50 МБ на файл, 500 МБ на сессию (v0.0.62)
|
||||
|
||||
## Контекст
|
||||
- После переезда на naeel-test-3 ресурсы инстанса уменьшены до 1 CPU / 2048 MiB
|
||||
(Штурвал, подтверждено kubectl: requests=limits 1CPU/2Gi).
|
||||
- При 2Gi памяти лимит 1ГБ/сессия (фронт) + отсутствие лимита на файл стали опасны
|
||||
(OOM-риск, сессии in-memory и теряются при рестарте).
|
||||
- Пользователь: вернуть лимит — один файл 50 МБ, всего 500 МБ, и показывать лимиты во фронте.
|
||||
|
||||
## Изменения
|
||||
Фронт (site/templates/index.html):
|
||||
- `MAX_FILE_BYTES = 50МБ`, `MAX_SESSION_BYTES = 500МБ` (было 1ГБ, лимит на файл был убран).
|
||||
- `addFileWithDedup`: файл сверх 50 МБ → `overNames` («не учитывается», красный, не обфусцируется);
|
||||
суммарный лимит 500 МБ — как раньше.
|
||||
- Шапка: «Ограничения: один файл не более 50 МБ, суммарно не более 500 МБ...».
|
||||
|
||||
Бэк:
|
||||
- `site/session.py`: добавлен `MAX_FILE_BYTES = 50МБ` (рядом с `MAX_SESSION_BYTES = 500МБ`).
|
||||
- `site/routes/api_bp.py` (защита):
|
||||
- `POST /api/upload`: файл >50 МБ пропускается (log, continue).
|
||||
- `POST /api/upload_refs`: ref с size>50МБ пропускается + DELETE с ВМ;
|
||||
после pull проверяется фактический len(content)>50МБ → пропуск + DELETE.
|
||||
- `site/app.py`: `MAX_CONTENT_LENGTH` 200МБ → 50МБ (защита памяти, согласовано с лимитом файла).
|
||||
|
||||
Версия: 0.0.61 → 0.0.62.
|
||||
|
||||
## Проверка
|
||||
- py_compile app.py / session.py / api_bp.py — OK.
|
||||
- node --check (извлечённый <script> index.html) — OK.
|
||||
- get_errors — нет.
|
||||
|
||||
## Прочее (диагностика 5с)
|
||||
- Медленная загрузка страницы ~5с — НЕ кластер/приложение: `time_namelookup=5.15с`
|
||||
(медленный локальный резолвер: 8.8.8.8 первым в /etc/resolv.conf недоступен, фолбэк на 10.96.x.x).
|
||||
Тот же паттерн на ВМ (5.4с). drhider отвечает за ~0.03с после соединения.
|
||||
- Kubeconfig naeel-test-3 обновлён на ВМ (~/.kube/config-naeel-test-3), kubectl работает.
|
||||
Reference in New Issue
Block a user