Очень доступным языком о Long-Polling?

1. Клиент запрашивает страницу у сервера, используя обычный http

2. Запрошенная страница выполняет JavaScript, который запрашивает файл от сервера.

3. Сервер НЕ реагирует на запрошенную информацию и ждет, пока не появится новой информации

4. Когда появляется новая информация, сервер отсылает ее клиенту

5. Клиент получает новую информацию и НЕМЕДЛЕННО отсылает другой запрос серверу, запуская процесс ожидания на нем снова.


Что значит 3 и 4 пункты? В каком смысле, ждет пока не появится новой информации? Я лично вижу это так:
Хочу сэмулировать, чтобы понять.
Пишет человек в чат:
First User: Привет (это сообщение отправлено на сервер, но не реагирует на это сообщение, то есть Second User это сообщение не получает?)
First User: Еще раз привет! (А вот это сообщение уже доставлено Second User, т.к. появилась новая информация, и можно отослать клиенту ее?)
Second User: Привет! (и тут также, сообщение отправлено, но не реагирует сервер на сообщение, пока он не напишет еще чего то?)

Можно немного подробнее пояснить? в таком же примере, потому что из статей я что-то ничего не понял. Спасибо)
  • Вопрос задан
  • 29068 просмотров
Решения вопроса 1
planc
@planc
поковыряй пример https://socket.io/

long polling используется, если клиент не может использовать websocket

фишка в том, что вместо постоянного флуда новыми соединениями

- есть что новое ?
- нету !
- есть что новое ?
- нету !
- есть что новое ?
- { 'user': 'вася', 'message': 'привет'}
- есть что новое ?
- нету !

происходит:
- есть что новое
...
...
...
...
- { 'user': 'вася', 'message': 'привет'}
- есть что новое ?
...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы