Back to questions
Junior — Middle
91
Чем отличается протокол WebSocket от стандартного протокола HTTP при обмене данными в сети?
Answer from AI
sobes.tech AI
Основное отличие WebSocket от стандартного HTTP заключается в способе установления и поддержания соединения для обмена данными:
-
HTTP — это протокол запрос-ответ. Клиент отправляет запрос, сервер отвечает, после чего соединение обычно закрывается. Для получения новых данных клиент должен отправить новый запрос.
-
WebSocket — это протокол, который устанавливает постоянное двунаправленное соединение между клиентом и сервером. После первоначального HTTP-рукопожатия соединение переключается в режим WebSocket, и обе стороны могут в любой момент отправлять данные друг другу без необходимости повторных запросов.
Преимущества WebSocket:
- Низкая задержка при обмене данными
- Эффективность при частом обмене сообщениями
- Поддержка реального времени (например, чаты, игры, финансовые данные)
Пример использования в Node.js:
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', ws => {
ws.on('message', message => {
console.log(`Получено сообщение: ${message}`);
ws.send(`Ответ: ${message}`);
});
});