Junior — Middle
Kuidas erineb WebSocket protokoll tavalisest HTTP protokollist andmete vahetamisel võrgus?
sobes.tech AI
Vastus AI-lt
Peamine erine WebSocketi ja standardse HTTP vahel seisneb selles, kuidas ühendus andmete vahetamiseks luuakse ja hoitakse:
-
HTTP on päring-vastus protokoll. Klient saadab päringu, server vastab ning ühendus tavaliselt suletakse. Uute andmete saamiseks peab klient saatma uue päringu.
-
WebSocket on protokoll, mis loob püsiva, kahepoolse ühenduse kliendi ja serveri vahel. Pärast algset HTTP kättesaamist vahetatakse ühendus WebSocket-režiimile ning mõlemad pooled saavad igal ajal saata andmeid ilma korduvate päringuteta.
WebSocketi eelised:
- Vähem viivitust andmete vahetamisel
- Efektiivsus sagedase sõnumivahetuse korral
- Reaalajas tugi (näiteks vestlused, mängud, finantsandmed)
Node.js näide:
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', ws => {
ws.on('message', message => {
console.log(`Saadud sõnum: ${message}`);
ws.send(`Vastus: ${message}`);
});
});