Как ограничить количество запросов на сервер при автосохранении данных?

Господа!
Есть проект, в котором почти все настройки сохраняются через AJAX, при внесении каких либо изменений в input, select, checkbox, radio.
Теперь ситуация, когда пользователь начнет "дергать" какой то checkbox миллион раз туда-сюда, отправляя кучу запросов на сервер.
Как я могу ограничить количество запросов на сервер каждого параметра настроек? Если, допустим, на странице 10 checkbox, которые находятся в одной форме.
Допустим, как сделать так, чтобы пользователь мог изменять каждый параметр не более n раз за определенное время.

Не хочу ставить кнопку "Сохранить", ибо это не удобно, если человеку нужно изменить всего один параметр.

Заранее благодарю за помощь!
  • Вопрос задан
  • 321 просмотр
Решения вопроса 1
OTCloud
@OTCloud
Программирование и Архитектура ПО
Нужна точка отсчета для использования ваше упомянутого debouncing метода. Для этого можно использовать "печенюхи", которые в данной задаче бесполезны, так как их можно просто удалить и снова закидывать сервер запросами ( 1 запрос * 5000 запросов ). А можно писать логи прям на сервере и парсить их скриптом, который будет является чем-то вроде "proxy" и сам будет знать когда ему отвлекаться на запросы пользователя, а когда "попросить подождать".
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@bpGusar
*spoiler*
debounce или throttle
Ответ написан
Комментировать
@pcdesign
Есть вариант использовать nginx
nginx.org/ru/docs/http/ngx_http_limit_req_module.html
В доке пример как к /search/ ставят ограничение, но по аналогии можно что угодно залимитировать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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