Limita los datos que procesas
Filtra por dirección o programa antes de decodificar. Usa metadatos si solo necesitas hashes y contadores. Aplica slices solo cuando el decoder los espere. Agrupa suscripciones con poco tráfico y separa programas de alto volumen cuando las métricas lo justifiquen.Limita trabajo y memoria
Esperar a un handler limita la concurrencia, pero no paraleliza trabajo de CPU. Usa colas limitadas y workers para parsing costoso. Define qué hacer al llenarse: pausar, muestrear métricas descartables o detenerse y recuperar datos persistentes.Reconecta con un límite de reintentos
Guarda el helper del inicio rápido comostream.mts en el mismo directorio. Los ejemplos usan las mismas variables y dependencias.
Este ejemplo reintenta con espera exponencial y jitter y termina tras ocho interrupciones. Corrige fallos de autenticación antes de reiniciar.
reconnect.mts
Recupera los huecos de forma explícita
Guarda el progreso tras completar la escritura de destino. Reconecta con la suscripción completa y recupera el rango con historial RPC o un snapshot. Usa replay solo si el endpoint confirma soporte y retención; deduplica lo recuperado.Ajusta según las métricas
- Compara EU y US desde el host real; un ping ICMP no mide la latencia del stream.
- Si un mensaje supera el límite, reduce el contenido antes de aumentarlo. Usa las opciones de tu versión y calcula el coste de memoria.
- Responde a pings. Keepalive del transporte y ping de suscripción son mecanismos distintos.
- Alerta ante desconexiones repetidas, errores de decoding, colas crecientes, progreso detenido y fallos de escritura.
- Prueba interrupción y recuperación con la base de datos de destino.