Server polling with JavaScript

What is best practise for polling server with JavaScript for application that needs to refresh data very rapidly? I'm using jQuery for front-end and Java Spring Framework for backend.

Example of refreshed data could be list of items that are getting updated very rapidly (every 1 second).

25
задан Daniel Vassallo 27 August 2010 в 10:50
поделиться

2 ответа

Вы можете использовать функции jQuery Ajax для опроса сервера каждую секунду или около того. Затем сервер может ответить браузеру инструкциями почти в реальном времени.

Вы также можете использовать длительный опрос вместо вышеуказанного, чтобы уменьшить задержку без увеличения частоты опросов.

Цитирование Comet Daily: метод длительного опроса:

Техника длительного опроса Comet — это метод, который оптимизирует традиционный опрос для уменьшения задержки.

При традиционном опросе на сервер через фиксированные интервалы времени отправляется XMLHttpRequest. Например, открывайте новый XMLHttpRequest каждые 15 секунд, получайте немедленный ответ и закрывайте соединение.

При длительном опросе запрос отправляется на сервер, но ответ не возвращается клиенту до тех пор, пока он не будет доступен. Как только соединение закрывается, либо из-за ответа, полученного клиентом, либо из-за истечения времени ожидания запроса, инициируется новое соединение. Результатом является значительное сокращение задержки, поскольку сервер обычно устанавливает соединение, когда он готов вернуть информацию для возврата клиенту.

В дополнение к сказанному выше, я также предлагаю вам ознакомиться с принятым ответом на следующий пост Stack Overflow для получения подробного описания метода длинного опроса:

40
ответ дан 28 November 2019 в 21:03
поделиться

Я поддерживаю предложение Дэниела использовать длинный опрос или push-уведомление. Ознакомьтесь

CometD — это масштабируемая шина маршрутизации событий на основе HTTP, в которой используется шаблон технологии Ajax Push, известный как Comet. Термин «Комета» был придуман Алексом Расселом в его статье «Комета: данные с низкой задержкой для браузера».

У них есть страница, объясняющая, как заставить работать Spring:

3
ответ дан 28 November 2019 в 21:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: