2.4.1.1.12. WebSocket и EventSource
Внимание!
Технологии доступны на виртуальном и бизнес-хостинге, однако полноценная работа WebSocket возможна только на бизнес-хостинге с использованием веб-приложений.WebSocket — позволяет устанавливать постоянное соединение с сервером, который может отправлять и принимать данные.
EventSource — позволяет устанавливать постоянное соединения с сервером, который может только отправлять клиенту события в формате text/event-stream и не принимает данные. Используется в ситуациях, когда не требуется передача данных от клиента к серверу, например в новостных лентах, для обновления статусов в соцсетях и др.
Использование ресурсов
Поскольку технологии WebSocket и EventSource создают постоянное подключение с сервером для обмена или передачи данных, это порождает на хостинге +1 постоянно работающий процесс (в случае использования PHP). Например, если в текущем тарифе лимит условно 50 процессов, а к сокетам подключился 51 посетитель, то последний будет вынужден ждать пока кто-то отключится. Пока все ресурсы сервера будут заняты, новые посетители не смогут попасть на сайт.
Оптимальным вариантом для использования этих технологий являются веб-приложения, которые могут контролировать все подключения с помощью всего 1 постоянно работающего процесса. В этом случае лимит на количество одновременных процессов достигаться не будет.
Включение
Поддержка WebSocket и EventSource включается в разделе «Настройки сайта» на вкладке «Основные настройки»:
Стоит учитывать, что само по себе включение этой опции не даёт никакой нагрузки до момента, пока на сайте не реализованы скрипты, которые будут позволять этим технологиям работать и занимать процессы.