Лучший совет по очистке сегментов с помощью механизма ограничения скорости Token Bucket

Я используюПропускная способность газа«библиотека для регулирования запросов API — по сути, предотвращает создание кем-либо с одного и того же IP-адреса тоннами запросов в установленные сроки. Это создает корзину (просто файл), которая хранится в каталоге buckets.

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

use bandwidthThrottle\tokenBucket\Rate;
use bandwidthThrottle\tokenBucket\TokenBucket;
use bandwidthThrottle\tokenBucket\storage\FileStorage;

$ip = $_SERVER['REMOTE_ADDR'];
$storage = new FileStorage(__DIR__ . "/buckets/$ip.bucket"); //this will build up quickly
$rate    = new Rate(10, Rate::SECOND);
$bucket  = new TokenBucket(10, $rate, $storage);
$bucket->bootstrap(10);

if (!$bucket->consume(1, $seconds)) {
http_response_code(429);
header(sprintf("Retry-After: %d", floor($seconds)));
exit();
}

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector