build: лимиты ресурсов, прокси и нагрузочный тест; docs: API
- docker-compose: cpus/mem_limit через API_CPUS/API_MEM_LIMIT, прокси gost в профиле loadtest - tests/loadtest.py: параллельные запросы к /v1/solve + пики docker stats - docs/API.md: справочник по запросу, действиям, ответу и сессиям - docs/Deployment.md: результаты замеров и правило подбора BROWSER_SLOTS Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
df108dae3f
commit
a319b81d8b
6 files changed
+330
-105
No files matched your search
@@ -12,6 +12,19 @@ services:
|
||||
- extra:/app/extra
|
||||
# Chrome активно использует /dev/shm, дефолтных 64MB не хватает
|
||||
shm_size: "2gb"
|
||||
# Потолок ресурсов: при переборе OOM-killer прибьёт процесс Chrome внутри контейнера,
|
||||
# а не соседние сервисы на хосте. Подбирать под сервер вместе с BROWSER_SLOTS.
|
||||
cpus: ${API_CPUS:-4}
|
||||
mem_limit: ${API_MEM_LIMIT:-8g}
|
||||
memswap_limit: ${API_MEM_LIMIT:-8g}
|
||||
|
||||
# HTTP-прокси для локальных тестов (exit-IP = IP хоста): docker compose --profile loadtest up -d
|
||||
# из контейнера api доступен как http://proxy:8080
|
||||
proxy:
|
||||
image: gogost/gost:3.1.0
|
||||
profiles: ["loadtest"]
|
||||
restart: unless-stopped
|
||||
command: ["-L", "http://:8080"]
|
||||
|
||||
volumes:
|
||||
extra:
|
||||
Reference in new issue
Block a user