Los server sent events son la opción más barata cuando el tráfico va solo del servidor al cliente: HTTP normal, reconexión automática y pasan por casi todos los proxies. Los WebSockets justifican su coste operativo cuando necesitas mensajería bidireccional o de alta frecuencia, como un chat o edición colaborativa. El polling está bien cuando las actualizaciones son raras y unos segundos de desfase son aceptables, y sobrevive a cualquier red y balanceador de carga que exista.
Por qué lo preguntan los entrevistadores
El tiempo real es donde los desarrolladores recurren primero a la opción más compleja. El entrevistador quiere ver que emparejas el transporte con el patrón de tráfico real y que piensas en qué pasa a escala: conexiones pegajosas, escalado horizontal, reconexión y mensajes perdidos mientras un cliente estaba desconectado. Elegir polling por el motivo correcto es una señal fuerte, porque demuestra que sopesas el coste operativo en vez de perseguir la respuesta impresionante.
Cómo estructurar tu respuesta
- Empareja cada opción con la dirección y la frecuencia de tráfico que le encaja.
- Nombra el coste operativo de las conexiones persistentes.
- Cubre la reconexión y los mensajes perdidos.
- Recomienda una para el escenario que te dieron.
Ejemplo de respuesta
La primera pregunta es si el cliente necesita enviar algo de vuelta por el mismo canal. Notificaciones, contadores en vivo, una barra de progreso de un trabajo, un feed: todo va en un sentido, y los server sent events lo resuelven sobre HTTP normal con reconexión incorporada y una cabecera de last event id para retomar desde donde el cliente se cayó. Esa última parte está infravalorada. Los WebSockets son la elección correcta para chat, presencia o cualquier cosa colaborativa donde los clientes empujan a menudo y la latencia importa. El coste es real, eso sí: las conexiones tienen estado, así que escalar más allá de una instancia significa una capa de pub sub como Redis para repartir mensajes entre nodos, más comprobaciones de salud, contrapresión y autenticación en el apretón de manos inicial. Y el polling no es una respuesta de broma. En un panel de administración que construí, las actualizaciones importaban quizá una vez por minuto, así que un sondeo al recuperar el foco de la ventana con un ETag fueron unas quince líneas de código, no costaba nada operar y nunca despertó a nadie de madrugada. Prefiero gastar el presupuesto de complejidad donde los usuarios lo notan.
¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.
Mira cómo funcionaPreguntas de seguimiento que puedes esperar
- ¿Cómo escalarías conexiones WebSocket entre varios servidores?
- ¿Cómo entregas los mensajes que un cliente se perdió mientras estaba desconectado?
- ¿Cómo autenticas y autorizas una conexión de socket?
Más preguntas para Desarrollador full stack
Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.
Predecir mis preguntas