Кордон поддерживает три алгоритма подсчёта. Они дают разные результаты на всплесках и стоят разного объёма метаданных.
Счётчик на минуту. Дёшево (одно число на ключ), но у границы окна клиент может сделать 2×лимит: 40 запросов в конце одной минуты и 40 в начале другой.
Хранятся тайминги последних запросов (кольцевой массив). Всплеск на границе не работает, цена — память по количеству запросов в окне.
Ведро ёмкостью burst наполняется со скоростью limit.
Плавно пропускает всплески и держит среднюю — алгоритм по умолчанию.
| Алгоритм | Память | Всплески | Когда |
|---|---|---|---|
| fixed | минимум | на границе ×2 | жёсткие квоты биллинга |
| sliding | средне | нет | строгие SLA |
| token | константа | плавно | по умолчанию |