Опрос тайм-аута JavaScript () с функцией очереди jquery для управления запросами ajax - PullRequest
0 голосов
/ 11 февраля 2012

Рассмотрим следующее управление очередью ajax, которое я пытаюсь:

function addAjax(func) {
    $(document).queue("ajaxRequests", func);
    console.log($(document).queue("ajaxRequests"));
}

function execQueue() {
    $(document).dequeue("ajaxRequests");
    console.log($(document).queue("ajaxRequests"));

}

function polling() {
    execQueue();
    setTimeout(function() {polling();},1100);
}

Передача любой функции, содержащей вызов ajax, в addAjax (func), она добавляется в очередь.execQueue выполняет один элемент в очереди.polling () периодически вызывает себя (экспериментирует с таймингами)

Есть ли какие-либо серьезные проблемы с этим подходом, которых я не вижу?например, производительность / JavaScript / скрытые проблемы?Худшее влияние, которое я видел до сих пор, это то, что если пользователь щелкает и щелкает и щелкает множество элементов, запускающих ajax (например, элементы в списке), он наверстает упущенное, и он будет перепрыгивать между локациями - но я невоспринимайте это как проблему.

Моя главная цель - остановить слишком много одновременных запросов к серверу, то есть немного замедлить работу, чтобы все пользователи не обновляли страницу и не вызывали 5 запросов одновременно, а ставили в очередьи выполнить последовательно.

Спасибо,

Дейв

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...