Коротко: существует ли способ переместить данные с сервера на сеанс пользователя в сеансе без необходимости использования HTTP-запроса?
Long (er): Я создаю приложение HTML5 на сервере Apache / PHP / MySQL, которое может быть доступно пользователям на мобильных устройствах (или, возможно, через приложение PhoneGap).
Я хотел бы сообщить пользователю, когда есть новая информация, доступная из приложения, без сбоев в сборе данных, заставляя этого пользователя выполнять вызов на сервер или требуя вызовов AJAX (да, я знаю, что он может проверить один byte cookie, но я бы предпочел сделать его нулевым).
Хорошим примером этого может быть отправка сообщений чата между двумя пользователями для отправки от одного пользователя к другому.
В современных браузерах, в Websockets или в старых браузерах, « длинный опрос ». Существуют также библиотеки, которые могут абстрагировать некоторые из них (например, кометы ).
В настоящее время очень распространенной библиотекой является socket.io
которая автоматически соединяется с лучшими доступными технологиями, используя webSockets, если они доступны, и возвращается к другим технологиям, таким как длительный опрос, если он недоступен.
Некоторые другие ссылки:
Как реализовать базовый «длинный опрос»?
COMET (серверный клик для клиента) на iPhone
Подробнее о Long Polling
Есть ли разница между длинным опросом и использованием кометы
Проталкивание веб-сайтов
О HTML5, Push Data на мобильный
Я рекомендую Socket.io
Он использует
WebSocket, FlashSocket, HTML-файл (для IE), длительный опрос XHR, JSONP-опрос
Это с Node.js, что означает, что он находится на неблокирующем характере.
В режиме реального времени параллелизм – большая проблема
поэтому неблокирующий характер Node.js и Socket.io поможет вам
ScaleDrone позволяет переходить от PHP к JavaScript с помощью клиента PHP API .