Встречается на собеседованиях • сегодня

В чем разница между протоколами http и websocket

HTTP — это протокол запрос-ответ без постоянного соединения. Каждый запрос требует нового соединения, и сервер отвечает только после получения запроса. Пример:

python
import requests
response = requests.get('https://example.com')  # Одноразовый запрос

WebSocket — протокол полнодуплексного обмена данными с постоянным соединением. Клиент и сервер могут обмениваться сообщениями асинхронно без повторных подключений. Пример:

python
import websockets
async with websockets.connect('ws://example.com') as ws:
    await ws.send("Hello")  # Отправка
    response = await ws.recv()  # Получение без разрыва соединения

Ключевые отличия:

  1. Соединение: HTTP — временное, WebSocket — постоянное.
  2. Направление: HTTP — однонаправленный (клиент → сервер), WebSocket — двунаправленный.
  3. Накладные расходы: HTTP — заголовки каждый раз, WebSocket — минимум после рукопожатия.
  4. Использование: HTTP для статики, REST; WebSocket для чатов, онлайн-игр, реальных данных.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы