Corrige lentidão do frontend com múltiplos clientes simultâneos

---

- Substituída consulta individual por stream (supervisorctl status {p}-{id} × 5) por uma única chamada supervisorctl status que retorna todos os programas de uma vez, com cache de 3s em fetchAllStatuses();
- Adicionado endpoint GET /api/streams/statuses que retorna os statuses de todos os streams em uma resposta batch;
- Frontend alterado para usar o endpoint batch em vez de N requests paralelos por ciclo de polling;
- Token de sessão HMAC-SHA256 em auth.ts agora é computado uma vez e cacheado no módulo, eliminando operações de crypto a cada requisição;
- Rolling session no middleware limitado a rotas de página, removendo overhead de Set-Cookie em respostas de API e HLS;

---
This commit is contained in:
2026-04-27 10:41:23 -03:00
parent 8046310f27
commit 059807b9ef
5 changed files with 65 additions and 33 deletions
+6
View File
@@ -0,0 +1,6 @@
import { NextResponse } from "next/server"
import { getAllStreamStatuses } from "@/lib/supervisor"
export async function GET() {
return NextResponse.json(getAllStreamStatuses())
}