Ограничитель продолжительности
класс ОграничительПродолжительности (Просмотреть исходный код)
Свойства
| int | $decaysAt | Отметка времени окончания текущей продолжительности. | |
| int | $remaining | Количество оставшихся слотов. |
Методы
| void | __construct(Подключение $redis, string $name, int $maxLocks, int $decay) Создать новый экземпляр ограничителя продолжительности. | |
| mixed | block(int $timeout, callable|null $callback = null, int $sleep = 750) Попытка получить блокировку на заданное количество секунд. | |
| bool | acquire() Попытка получить блокировку. | |
| bool | tooManyAttempts() Определить, было ли "доступ" к ключу слишком много раз. | |
| void | clear() Очистить ограничитель. | |
| string | luaScript() Получить Lua скрипт для получения блокировки. | |
| string | tooManyAttemptsLuaScript() Получить Lua скрипт для определения, было ли "доступ" к ключу слишком много раз. |
Подробности
void __construct(Подключение $redis, string $name, int $maxLocks, int $decay)
Создать новый экземпляр ограничителя продолжительности.
mixed block(int $timeout, callable|null $callback = null, int $sleep = 750)
Попытка получить блокировку на заданное количество секунд.
bool acquire()
Попытка получить блокировку.
bool tooManyAttempts()
Определить, было ли "доступ" к ключу слишком много раз.
void clear()
Очистить ограничитель.
protected string luaScript()
Получить Lua скрипт для получения блокировки.
KEYS[1] - Имя ограничителя ARGV[1] - Текущее время в микросекундах ARGV[2] - Текущее время в секундах ARGV[3] - Длительность буфера ARGV[4] - Разрешенное количество задач
protected string tooManyAttemptsLuaScript()
Получить Lua скрипт для определения, было ли "доступ" к ключу слишком много раз.
KEYS[1] - Имя ограничителя ARGV[1] - Текущее время в микросекундах ARGV[2] - Текущее время в секундах ARGV[3] - Длительность буфера ARGV[4] - Разрешенное количество задач
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Redis/Limiters/DurationLimiter.html