Реал-тайм через SSE (push-to-invalidate): живые приглашения/партии, авто-обновление без перезагрузки
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -45,3 +45,15 @@ HTTPS твоими сертификатами и проксирует трафи
|
||||
|
||||
> Telegram-вход требует HTTPS-домен: у BotFather `/setdomain` укажи оба домена
|
||||
> (`forbiddenstars.ru` и `forbidden-stars.ru`).
|
||||
|
||||
## Реал-тайм (SSE)
|
||||
|
||||
Приложение шлёт события «данные изменились» через SSE: `GET /api/events`
|
||||
(`text/event-stream`). Это обычный HTTP — проходит через Caddy и SSH-туннель без доп.
|
||||
настроек, КРОМЕ одного: для пути `/api/events` в `Caddyfile` выделен отдельный `handle`
|
||||
**без `encode`** и с **`flush_interval -1`** (иначе сжатие/буферизация задержат поток).
|
||||
После правки `Caddyfile` на VPS: `sudo systemctl reload caddy` (или `restart`).
|
||||
|
||||
Шина событий — **in-memory**, рассчитана на один процесс (uvicorn `--workers 1`, как в
|
||||
контейнере). Если когда-нибудь поднимешь несколько воркеров/реплик — шину нужно вынести во
|
||||
внешний брокер (Redis pub/sub), иначе события увидит только тот воркер, что принял мутацию.
|
||||
|
||||
Reference in New Issue
Block a user