Подтвердить что ты не робот

Зачем нужны веб-сокеты?

Это скорее вопрос n00b, но я никогда не знал ответа.

зачем нам нужен протокол websockets?

и, каковы преимущества перед использованием комета-стиля/длинного опроса/зависания GET-стиля использования HTTP?

4b9b3361

Ответ 1

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

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

Веб-сокеты удаляют издержки и значительно уменьшают сложность.

Ответ 2

1-WebSocket - это, естественно, полнодуплексный, однонаправленное, однонаправленное подключение. С помощью WebSocket ваш HTTP-запрос становится один запрос на открытие соединения WebSocket и повторное использование такого же соединения от клиента к серверу, а сервер к клиенту.

2-WebSocket уменьшает время ожидания. Например, в отличие от опроса, WebSocket делает один запрос. Серверу не нужно ждать запроса от клиент. Точно так же клиент может отправлять сообщения на сервер в любое время. Этот сингл запрос значительно снижает латентность по опросу, который отправляет запрос с интервалом, независимо доступны ли сообщения.

3-WebSocket делает общение в режиме реального времени намного более эффективным. Вы всегда можете использовать опрос (а иногда и потоковое) по HTTP для получения уведомления по HTTP. Однако WebSocket экономит пропускную способность, мощность процессора и задержку. WebSocket - это инновация в производительности.

4-WebSocket - это базовый сетевой протокол, который позволяет вам создавать другие стандарты протоколы поверх него.

5-WebSocket является частью усилий по предоставлению расширенных возможностей приложениям HTML5 в чтобы конкурировать с другими платформами.

6-WebSocket - это простота

Ответ 4

Не ясно, что они нам нужны. В сценарии нажатия событий клиенту страница может делать обычные запросы AJAX GET в цикле, и сервер может "зависать" до тех пор, пока события не будут доступны. По прошествии некоторого времени ожидания сервер может вернуть ответ "нет событий", чтобы клиент снова подключился. В течение периода, когда соединение открыто и клиент ожидает ответа, есть эффективный канал push с сервера обратно клиенту.

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

Учитывая эту существующую возможность, возникает вопрос: действительно ли новая структура связи действительно повышает значимость того, что уже можно сделать? На самом деле это не помогло бы сделать что-то, что нельзя сделать. Это лишь немного улучшит его.