test: LOAD_THREADS 4 (стабильно, = MAX_WORKERS); полный прогон: not-load 102 passed, load 3 passed
This commit is contained in:
+4
-3
@@ -62,11 +62,12 @@ pytest -m "not load" -q # быстрые юнит-тесты без на
|
||||
|
||||
```bash
|
||||
LOAD_CONTRACTS=100 LOAD_SUPPS=20 LOAD_SERVICES=10 \
|
||||
LOAD_OPS=5000 LOAD_THREADS=8 LOAD_PER=200 \
|
||||
LOAD_OPS=5000 LOAD_THREADS=4 LOAD_PER=200 \
|
||||
pytest -m load -q
|
||||
|
||||
Примечание: `LOAD_THREADS >= 16` — стресс-режим конкурентной записи:
|
||||
SQLite с `busy_timeout=5000` даёт `database is locked` (см. `History/2026-08-26-load-sqlite-locked.md`).
|
||||
Примечание по конкурентной записи: стабильный уровень `LOAD_THREADS=4`
|
||||
(= `MAX_WORKERS` приложения). `>= 8` — нестабильно: SQLite с
|
||||
`busy_timeout=5000` даёт `database is locked` (см. `History/2026-08-26-load-sqlite-locked.md`).
|
||||
```
|
||||
|
||||
HTTP-стресс против локального/прод сервиса:
|
||||
|
||||
@@ -12,7 +12,7 @@ from db import spec_events, spec_current
|
||||
|
||||
pytestmark = pytest.mark.load
|
||||
|
||||
N_THREADS = int(os.getenv("LOAD_THREADS", "8"))
|
||||
N_THREADS = int(os.getenv("LOAD_THREADS", "4"))
|
||||
PER = int(os.getenv("LOAD_PER", "200"))
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user