vpnbot-xray-patches/patches/series
loop-uh 145f7314c3
All checks were successful
Follow official Xray dev releases / candidate (push) Successful in 4m13s
Test and build VPnBot Xray patches / test-and-build (push) Successful in 5m4s
Аудит живых пользователей Xray: компактный JSON вместо рефлективного с отступами
xray api vpnbot-audit-users отдавал оба прохода через creflect.MarshalToJson:
рефлексия по каждому аккаунту и JSON с отступами — ~400 байт на пользователя.
27.09.2026 на tinor (15 088 клиентов) это 11,9 МБ и 0,41 с CPU на вызов, а
узловой помощник строит аудит при каждом создании и удалении ключа и в
фоновой проверке раз в ~25 с.

Теперь каждый пользователь пишется как email и точная идентичность аккаунта:
VLESS — {"_TypedMessage_", "id"} (те же значения, что давал рефлективный
кодировщик), любой другой тип аккаунта — в прежнем рефлективном виде.
Контракт vpnbot-live-user-audit-v1 и два прохода не меняются.

Проверено:
- go test на v26.7.28 и v26.9.9 (test-patches.sh, включая сценарии с
  настоящим процессом); новые тесты сверяют прямой вывод с рефлективным для
  vless/vmess/trojan/shadowsocks, VLESS без id и пользователя без аккаунта.
- Живой Xray с 3002 пользователями: ответ 2,4 → 0,8 МБ; строгий аудит
  узлового помощника (_build_live_user_registry_audit) на ответах старого и
  нового бинарника дал идентичный результат, 66 → 40 мс.
- Бенчмарк 15 080 пользователей × 2 прохода: кодирование 158 → 16 мс,
  13,6 → 4,0 МБ.
2026-09-27 18:25:11 +03:00

3 lines
369 B
Text

cff026a11a5684c1c1a82d24c822106533e79996ec6044c399d96bb271f7f677 0001-Interrupt-active-VLESS-sessions-on-user-removal.patch
9da5d7b2209c7f62023b23c69501afcc362805b4c41d9e3f966a9f3e72ace30f 0002-Interrupt-active-Trojan-sessions-on-user-removal.patch
42f8e1994817d96d19b2ee76a1a0af1c7f54733b55f1381f91e1421de1ed0835 0003-Interrupt-all-managed-Xray-user-sessions.patch