Server-Sent Events (SSE)
Server-Sent Events (SSE) — технология, при которой сервер отправляет клиенту обновления по мере их появления. Клиенту не нужно отправлять повторяющиеся запросы. Соединение одностороннее: от сервера к клиенту.
- Для поддержания соединения открытым, сервер может отправлять пустые события с определенной периодичностью, чтобы не закрылось соединение браузером из-за таймаута.
- Относится к асинхронным методам, т.к. позволяет получать данные от сервера, как только они становятся доступны, без задержек и постоянных перезапросов.
Как рабо тает
- Клиент делает HTTP-запрос на сервер и остается подключенным к серверу.
- Сервер открывает однонаправленный поток данных, отправляет обновления на клиент в формате текстовых событий.
- Онлайн клиент получает данные по мере их поступления с сервера.
Где применяется
Когда сервер должен регулярно обновлять информацию на веб-странице. Например:
- в системах мониторинга (получение обновлений о состоянии системы)
- чатах (получение новых сообщений)
- торговых приложениях (обновления котировок)
- лентах новостей и социальных сетях
- push-уведомлениях из веб-приложения