Una app de chat necesita que el servidor envíe mensajes al instante a los clientes. ¿Qué transporte es el más adecuado?
Opciones
- Consultar al servidor cada 30 segundos
- WebSockets (o Server-Sent Events para envío en un solo sentido) (Opción correcta)
- SMTP, el protocolo de entrega de correo
- HTTP/1.0 simple con una conexión nueva cada vez
Respuesta
WebSockets (o Server-Sent Events para envío en un solo sentido)
Por qué
El HTTP normal solo deja preguntar al cliente; el servidor no puede hablar primero. El polling ('¿hay novedades?') cada pocos segundos es lento y desperdicia recursos.
Un WebSocket mantiene una conexión abierta, y ambos lados pueden enviar mensajes en cualquier momento, con muy poco retraso.
Server-Sent Events es una opción más simple cuando solo el servidor necesita enviar (por ejemplo resultados en vivo).
Recuerda
Tiempo real en dos sentidos → WebSockets.