ГРУППА КУРСА
|
Долгие опросыДолгие опросы работают следующим образом: страница отправляет запрос на сервер, но сервер не отправляет ответ сразу. На сервере с определённой частотой просиходит проверка, добавились ли новые данные. При этом соединение остаётся открытым. Как только на сервере появляются новые данные, сервер их отправляет. После их получения страница сразу отправляет новый запрос и опять происходит ожидание новых данных. Чтобы скрипт, получивший данные, отправил новый запрос, можно использовать рекурсию, то есть, функция вызывает сама себя. А на сервере нужно создать цикл, в котором через определённые промежутки времени происходит обращение к базе данных. Когда в ней появляются новые записи, скрипт их получает, цикл прекращается, сервер отправляет данные и работа скрипта заканчивается. После этого страница снова запускает этот скрипт. Преимущество данного способа перед частыми опросами заключается в том, что не происходит множества лишних запросов без отправки данных. Сервер отправляет ответ только тогда, когда в этом есть практический смысл. Основная нагрузка на сервер при этом состоит в том, что нужно держать открытые соединения с клиентами. Но эта задача возникает при любом способе реализации COMET. Кроме того, при частом обновлении данных количество запросов становится большим. На основе долгих опросов создано большое количество чатов. И в этом учебнике данная тема будет рассмотрена на примере чата. Так как, этот пример получается несколько сложнее, чем другие, то он находится в отдельной теме. Создание чата разделено на несколько частей, каждая из которых является достаточно простой. А то, что касается технологии COMET, разъясняется максимально подробно. |