Интернет — это сеть, которая соединяет пользователей по всему миру со своих компьютеров и устройств. Протокол необходим для успешного извлечения и отправки информации. Определение протокола очень хорошо определено ниже.

... как книгу правил, пошаговое руководство, которое каждый компьютер использует, чтобы узнать, как общаться с другим компьютером. Эта книга правил диктует, что каждый компьютер должен делать для передачи данных, когда передавать данные и как передавать эти данные. В нем также указано, как получать данные таким же образом. Если правила не соблюдаются, компьютер не сможет подключаться к другому компьютеру, а также отправлять и получать данные между другими компьютерами.

Если вы думаете о дорогах и автомагистралях, то есть правила, которые знают все водители, чтобы мы могли безопасно и успешно добраться из пункта А в пункт Б.

HTTP (протокол передачи гипертекста) — это однонаправленный протокол без сохранения состояния, который работает как протокол запроса-ответа. Клиент общается с помощью запросов на получение, и сервер отвечает, как только он их получает.

Веб-сокеты обеспечивают двустороннюю связь. Сначала необходимо установить начальное рукопожатие, но после этого и клиент, и сервер могут отправлять и получать информацию одновременно. Сервер может отправить сообщение клиенту без явного запроса клиента. Кроме того, для отправки сообщений необходимо обмениваться очень небольшим объемом служебных данных, что обеспечивает коммуникацию с малой задержкой.

HTTP отлично подходит для нерегулярного обмена данными, а взаимодействия, инициированные клиентом, и веб-сокеты — ваш выбор, если вашему приложению требуются обновления в реальном времени, например приложения для чата или многопользовательские игры.

Я собираюсь использовать праздники и Санту в качестве аналогии, чтобы помочь понять. Веб-сокеты могут быть похожи на то, как дети получают подарки в свои дымоходы, даже не запрашивая их. Если бы Санта следовал протоколу HTTP, он не смог бы отправлять подарки, пока не получит их запрос.

Ресурсы





https://developerinsider.co/difference-between-http-and-http-2-0-websocket

https://flaviocopes.com/websockets