5.0 KiB
PidTor 503 в «Торренты» — диагноз и фикс
Дата: 2026-09-22 Статус: 🔴 ПЛАН, требует подтверждения (нужен рестарт lampac) Связано: personal/tech/lampac-torrserver, personal/tech/lampac-deployment
Симптом (Alex)
«по просмотру: у меня есть определенные сомнения что через torrserver идут, там только пункт "смотреть онлайн" работает и он добавляет вотермарк и рекламу 1xbet... потому что если пункт "торренты" выбрать при просмотре - то там пусто.»
Диагноз: 503 закэширован lampac
Ключевое доказательство
GET /lite/pidtor?title=F1&year=2025
HTTP/1.1 503 Service Unavailable
Content-Length: 0
X-Invoke-Cache: HIT ← 🔴 ОТВЕТ ИЗ КЭША, запроса к JacRed НЕТ
время ответа: 0.0016s ← мгновенно = из памяти
При этом ВСЁ исправно
JacRed локальный: /api/v2.0/indexers/all/results?Query=F1 -> 200, 72 раздачи
sid=203, 26, 18, 7... (богатая выдача)
JacRed локальный: ?Query=Гамнет -> 200, 14 раздач, max sid=79
jac.red (чужой): ?Query=Гамнет -> 200, 15 раздач, 0.35s
TorrServer: /ts/echo -> MatriX.135, качает (343 пира на тесте)
JacRed изнутри: 0.12s локально, 0.20s внешний хост
Вывод: один раз PidTor получил отказ → lampac закэшировал 503 → теперь отдаёт его всем запросам по этим фильмам ~40 минут.
Где искать раздачи — PidTor ходит НАРУЖУ, не на Кра́кен
PidTor.redapi = "http://jac.red" (144.31.3.10) ← ЧУЖОЙ хост
Цепочка:
Lampa → lampac PidTor → jac.red (ПОИСК раздач, чужой сервер)
→ magnet → TorrServer Кра́кена (КАЧАЕТ, локально)
→ поток /lite/pidtor/s<id>
🔴 Поиск раздач — на чужом сервере. TorrServer только качает.
Оба варианта поиска рабочие:
- локальный JacRed lampac (
/api/v2.0/indexers/all/results) — 0.12s - внешний
jac.red— 0.35s
План фикса
Шаг 1 — сбросить кэш 503 (рестарт lampac)
docker restart lampac
Кэш X-Invoke-Cache живёт в памяти процесса → сбрасывается рестартом.
Проверка после рестарта:
curl -s -o /dev/null -w '%{http_code}\n' \
"http://127.0.0.1:9118/lite/pidtor?title=F1&year=2025"
# ожидаем 200 (было 503)
Шаг 2 — переключить PidTor на ЛОКАЛЬНЫЙ JacRed (стабильнее)
config-module/init.conf:
{
"PidTor": {
"enable": true,
"redapi": "http://127.0.0.1:9118",
"min_sid": 1
}
}
Зачем:
redapiна локальный lampac — не зависим от чужогоjac.red, который подтормаживает и даёт таймауты (причина закэшированного 503).min_sid: 1вместо 15 — сейчас отсекает большинство раздач. По Гамнету: из 14 раздач только 6 проходятmin_sid=15. По F1 раздачи с sid=1, 4, 7 отсекаются, хотя они рабочие.
⚠️ min_sid — спорно: низкий sid = медленнее качает. Нужно решение Alex:
компромисс min_sid: 3..5, либо 1 (показывать всё).
Шаг 3 — проверить, что 503 не возвращается
Прогнать 5 фильмов с паузой, убедиться: все 200.
Питфоллы
- 🔴
X-Invoke-Cache: HITв заголовках — главный маркер «ответ из кэша, а не от источника». Всегда смотреть заголовки, не только код. - 🔴 503 ≠ «раздач нет». При отсутствии раздач PidTor отдаёт 200 с пустым списком. 503 = отказ источника.
- 🔴
min_sid: 15режет выдачу. Реальные сиды по свежим фильмам: 1–37. - 🔴 Поиск раздач идёт наружу (
jac.red), TorrServer качает локально. Не путать эти роли при диагностике. - 🔴 Кэш PidTor ~40 минут (README), в памяти процесса.