HTTP сервер предоставляет данные по запросу от клиента, предоставляется массив чисел. Запрос генерируется по таймеру каждую секунду. Как можно сделать так, чтобы при большой загруженности сервера время данного запроса увеличивалось, а при меньшей загруженности - уменьшалось?
function Timer2(){
xhr.open("GET", "content.bin?r=" + Math.random(), true);
xhr.responseType = "arraybuffer";
xhr.onload = function (oEvent) {
var uint16Array = new Uint16Array(this.response);
myChart.data.datasets[0].data = data16Array;
myChart.update();
}
xhr.send(null);
idTimer2 = setTimeout(Timer2, 1000);
}
Вот у таймера время 1000. Я так понимаю надо завести туда переменную и условие if, которое сможет управлять данной переменной, вопрос в том, что это за условие и как его прописать?
По аналогии с этим
if (ошибка запроса из-за перегрузки сервера) {
// увеличить интервал для следующего запроса
delay *= + 500;
}