Sobes.tech
Junior — Middle

V čem se liší protokol WebSocket od standardního protokolu HTTP při výměně dat v síti?

sobes.tech AI

Odpověď od AI

Hlavní rozdíl mezi WebSocketem a standardním HTTP spočívá v tom, jak je navázáno a udržováno spojení pro výměnu dat:

  • HTTP je protokol požadavek-odpověď. Klient odešle požadavek, server odpoví a spojení se obvykle uzavře. Pro získání nových dat musí klient odeslat nový požadavek.

  • WebSocket je protokol, který navazuje trvalé, obousměrné spojení mezi klientem a serverem. Po počátečním handshake HTTP se spojení přepne do režimu WebSocket a obě strany mohou kdykoli posílat data bez nutnosti opakovaných požadavků.

Výhody WebSocket:

  • Nízká latence při výměně dat
  • Efektivita při časté výměně zpráv
  • Podpora v reálném čase (například chaty, hry, finanční data)

Příklad použití v Node.js:

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

wss.on('connection', ws => {
  ws.on('message', message => {
    console.log(`Obdržená zpráva: ${message}`);
    ws.send(`Odpověď: ${message}`);
  });
});