как Google gmail, docs и т. д. получает push-уведомления об изменениях? - PullRequest
2 голосов
/ 01 декабря 2010

Я бы предположил, что на стороне клиента есть AJAX-запрос, который запрашивает обновления, но это удивительно жесткий ответ. Может ли кто-то лучше понять какие-то трюки, которые они могут делать в протоколе?

1 Ответ

2 голосов
/ 01 декабря 2010

Два метода, обычно используемые в этом случае

  • Опрос: код Javascript опрашивает сервер каждые (например) 10 секунд, чтобы узнать, есть ли свежие новости для показа

  • Постоянное соединение: запрос XMLHttpRequest выполняется клиентом, и сервер сохраняет соединение до тех пор, пока не появятся какие-либо новости (в этом случае отправляет данные клиенту) или по достижении заданного времени ожидания - тогда клиент пытается снова и т. д.

Google, вероятно, использует второй вариант, который отвечает и обновляется быстрее.

...