Hardware e InferenciaCódigo Abierto 🇷🇺 07.08.2026 13:02

Alcanzando 8.8 Gbps de tráfico de video en un solo núcleo de CPU en Go

MicrosoftMicrosoft
Un desarrollador de Habr describe la construcción de un motor de streaming RTSP a HLS personalizado en Go llamado Ruseon Core para manejar el problema de la manada atronadora. El motor utiliza un búfer circular de copia cero con sync.Pool para evitar asignaciones, logrando un rendimiento de 8.8 Gbps en un solo núcleo, con un uso mínimo de memoria y CPU, a diferencia de FFmpeg o MediaMTX.
Después de que un enlace compartido provocara una estampida de usuarios y un desbordamiento de memoria en el servidor, el autor decidió crear un motor de streaming personalizado en Go en lugar de alquilar hardware más potente. El motor, llamado Ruseon Core, ingiere flujos RTSP y genera HLS sin transcodificar, simplemente reenviando bytes. La característica clave es un búfer circular de copia cero con sync.Pool: los fotogramas se escriben una vez en un búfer de un pool y se comparten con todos los suscriptores, eliminando asignaciones y presión del recolector de basura. El benchmark muestra 13,9 ns/op y 0 B/op. Las pruebas de carga con k6 (1000 usuarios) en un Ryzen 5600x alcanzaron 8,8 Gbps (81 GB en 70 segundos) con 60 000 respuestas HTTP exitosas y sin fallos. La protección de suscriptores utiliza envíos no bloqueantes al canal con descarte de fotogramas para clientes lentos, y una bandera NeedsIFrame para resincronizar en el siguiente fotograma clave. Se mantiene en memoria una ventana deslizante de 5 segmentos HLS; los segmentos obsoletos devuelven 404, lo que hace que los reproductores como hls.js salten al borde en vivo. El sistema utiliza 250 MB de RAM para 100 flujos, pero los búferes de socket del sistema operativo añaden sobrecarga. El autor advierte sobre los peligros de sync.Pool y sugiere que para cargas de trabajo sin transcodificación, evitar FFmpeg y controlar la memoria con copia cero es beneficioso.
Fuente: Habr — хаб ИИ — original
Nuestros artículos anteriores sobre este tema ↓
Noticias frescas