Sobes.tech
Junior — Middle

¿En qué se diferencia el protocolo WebSocket del protocolo HTTP estándar al intercambiar datos en la red?

sobes.tech AI

Respuesta de la IA

La principal diferencia entre WebSocket y HTTP estándar radica en la forma en que se establece y mantiene la conexión para el intercambio de datos:

  • HTTP es un protocolo de solicitud-respuesta. El cliente envía una solicitud, el servidor responde, y luego la conexión generalmente se cierra. Para obtener nuevos datos, el cliente debe enviar una nueva solicitud.

  • WebSocket es un protocolo que establece una conexión bidireccional persistente entre el cliente y el servidor. Después del apretón de manos inicial de HTTP, la conexión cambia a modo WebSocket, y ambas partes pueden enviar datos en cualquier momento sin necesidad de solicitudes repetidas.

Ventajas de WebSocket:

  • Baja latencia en el intercambio de datos
  • Eficiencia en el intercambio frecuente de mensajes
  • Soporte en tiempo real (por ejemplo, chats, juegos, datos financieros)

Ejemplo de uso en Node.js:

const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', ws => {
  ws.on('message', message => {
    console.log(`Mensaje recibido: ${message}`);
    ws.send(`Respuesta: ${message}`);
  });
});