Алгоритм "Дырявое ведро" (leaking bucket) - ограничение трафика, отлонение запросов

Алгоритм похож на маркерную корзину, но в каком-то смысле проще:

  1. Запросы будем обрабатывать по очереди (и "из очереди", ее размер ограничен) с фиксированной скоростью
  2. Когде прилетает новый запрос, проверяем, есть ли место в очереди, если есть - добавляем в конец, если места нет, то просто отклоняем (http 429)

Плюсом является простота реализации и "стабильность".

Минусы:

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

Key Words for FKN + antitotal forum (CS VSU):