Modelo Sub-Socket
Servidor: Millones de sub-sockets y difusión
El gateway mantiene un sub-socket lógico (grupo de suscripción) por topic o channel. Al publicar un mensaje, solo reciben los sub-sockets suscritos a ese topic.
Unidad de escala
- La unidad de escala es el número de suscripciones (sub-socket), no el de conexiones físicas.
- Una difusión solo va al sub-socket de ese topic; el resto no se ve afectado.
- Se pueden abrir millones de sub-sockets con uso de recursos y latencia controlados.
Cliente: Misma idea
El cliente también puede pensar en micro:
- Conexiones de un solo propósito: p. ej. precios, alertas de riesgo, notificaciones de pago en micro sockets separados.
- Ventajas: Aislamiento de fallos, QoS/retry distintos, ACL/token distintos.
Ciclo de vida del sub-socket (servidor)
En Node.js los sub-sockets suelen representarse como Map<topic, Set<WebSocket>>. Ejemplo: Gateway: Sub-Socket y difusión.