Спросили, что лучше выбрать для приёма односторонних быстрых обновлений с сервера, SSE или вебсокеты?
Вот мои пять копеек.
SSE
В SSE есть цикл на сервере для поддержки соединения.
Это совершенно другая логика работы.
Получается мало того что ты обновлять откуда-то инфу должен в цикле, так ещë и делать это в количестве одновременно находящихся на сайте клиентов.
Зашло в твой редактор 1000 человек и 1000 циклов висит на сервере и крутится постоянно опрашивая что-то.
Ну допустим ты сделал задержку в секунду чтобы опрос базы не сильно грузил сервер. Но тогда увеличивается время отклика на действия пользователя, что будет раздражать. Да и медленное можно и на аяксе организовать, будет даже проще.
Вышесказанное касается PHP. Если взять Node.js, то благодаря Event Loop расходов на поддержание множества каналов уведомлений практически не будет.
Вебсокеты
С сокетами всë круче. Для сокетов поднимается специальный сервер демон. Centrifugo как правило. Он и соединений может сколько угодно держать и процессор с памятью не жрëт.
PHP скрипт или другой процесс взяли инфу, плюнули еë в центрифугу и тут же забыли про это. Что там дальше будет уже их не волнует.
Доставка упрощается, так как ей занимаемся не мы, вопрос нагрузки снимается.
Выводы
Так что, выбирая решение на чëм делать, я бы однозначно взял сокеты, а SSE даже и не пробовал бы.