Web технологии

17. Real-time сообщения

Дмитрий Смаль

Real Time сообщения

Примеры использования

Архитектура

 

Решения

Polling

Polling - периодический опрос

Polling на клиенте

Polling на сервере

Плюсы и минусы Polling

Comet

Comet - долгоживущие запросы

Comet на клиенте

Comet на сервере

В технологии comet сервер должен поддерживать одновременно открытыми большое количество соединений, причем каждое соединение находится в ожидании сообщений для него. По этой причине мы не можем использовать классический application-сервер в роли comet-сервера. Для comet-сервера необходима отдельная технология, например nginx + mod_push.

Nginx + mod_push

Отправка сообщений

Плюсы и минусы Comet

Server push

Server push - бесконечный запрос

Server push на клиенте

Ответ сервера:

WebSocket

WebSocket

WebSocket handshake

WebSocket на стороне клиента

WebSocket на стороне сервера

Плюсы и минусы WebSocket