RateLimiter
класс RateLimiter (Просмотр исходного кода)
Свойства
| InteractsWithTime |
Свойства
| protected Repository | $cache | Реализация хранилища кэша. | |
| protected массив | $limiters | Настроенные решатели объектов лимита. |
Методы
| int | secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до указанной даты DateTime. | из InteractsWithTime |
| int | availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить временную метку UNIX «доступно в». | из InteractsWithTime |
| DateTimeInterface|int | parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime. | из InteractsWithTime |
| int | currentTime()
Получить текущее системное время в виде временной метки UNIX. | из InteractsWithTime |
| string | runTimeForHumans(float $startTime, float $endTime = null)
Учитывая начальное время, отформатировать общее время выполнения для удобного чтения человеком. | из InteractsWithTime |
| void | __construct(Repository $cache)
Создать новый экземпляр лимитера скорости. | |
| $this | for(string $name, Closure $callback)
Зарегистрировать конфигурацию лимитера с именем. | |
| Closure|null | limiter(string $name)
Получить заданный лимитер скорости с именем. | |
| mixed | attempt(string $key, int $maxAttempts, Closure $callback, int $decaySeconds = 60)
Попытка выполнить обратный вызов, если он не ограничен. | |
| bool | tooManyAttempts(string $key, int $maxAttempts)
Определить, было ли превышено заданное количество попыток для ключа. | |
| int | hit(string $key, int $decaySeconds = 60)
Увеличить счетчик для заданного ключа на заданный период затухания на 1. | |
| int | increment(string $key, int $decaySeconds = 60, int $amount = 1)
Увеличить счетчик для заданного ключа на заданный период затухания на заданное количество. | |
| int | decrement(string $key, int $decaySeconds = 60, int $amount = 1)
Уменьшить счетчик для заданного ключа на заданный период затухания на заданное количество. | |
| mixed | attempts(string $key)
Получить количество попыток для заданного ключа. | |
| mixed | resetAttempts(string $key)
Сбросить количество попыток для заданного ключа. | |
| int | remaining(string $key, int $maxAttempts)
Получить оставшееся количество попыток для заданного ключа. |
| int | retriesLeft(string $key, int $maxAttempts)
Получить оставшееся количество попыток для заданного ключа. | |
| void | clear(string $key)
Очистить попадания и таймер блокировки для заданного ключа. | |
| int | availableIn(string $key)
Получить количество секунд до повторного доступа к «ключу». | |
| string | cleanRateLimiterKey(string $key)
Очистить ключ лимитера скорости от символов Юникода. |
Подробности
protected int secondsUntil(DateTimeInterface|DateInterval|int $delay)
Получить количество секунд до заданной даты и времени.
protected int availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Получить временную метку UNIX «доступно в».
protected DateTimeInterface|int parseDateInterval(DateTimeInterface|DateInterval|int $delay)
Если заданное значение является интервалом, преобразовать его в экземпляр DateTime.
protected int currentTime()
Получить текущее системное время в виде временной метки UNIX.
protected string runTimeForHumans(float $startTime, float $endTime = null)
При заданном начальном времени отформатировать общее время работы для лучшего восприятия человеком.
void __construct(Repository $cache)
Создать новый экземпляр лимитера скорости.
$this for(string $name, Closure $callback)
Зарегистрировать конфигурацию лимитера с именем.
Closure|null limiter(string $name)
Получить заданный лимитер с именем.
mixed attempt(string $key, int $maxAttempts, Closure $callback, int $decaySeconds = 60)
Попытка выполнить обратный вызов, если он не ограничен.
bool tooManyAttempts(string $key, int $maxAttempts)
Определить, было ли заданное ключевое слово «обращено» слишком много раз.
int hit(string $key, int $decaySeconds = 60)
Увеличить (на 1) счетчик для заданного ключа на заданное время отклика.
int increment(string $key, int $decaySeconds = 60, int $amount = 1)
Увеличить счетчик для заданного ключа на заданное время отклика на заданное количество.
int decrement(string $key, int $decaySeconds = 60, int $amount = 1)
Уменьшить счетчик для заданного ключа на заданное время отклика на заданное количество.
mixed attempts(string $key)
Получить количество попыток для данного ключа.
mixed resetAttempts(string $key)
Сбросить количество попыток для данного ключа.
int remaining(string $key, int $maxAttempts)
Получить количество оставшихся попыток для данного ключа.
int retriesLeft(string $key, int $maxAttempts)
Получить количество оставшихся попыток для данного ключа.
void clear(string $key)
Очистить попадания и таймер блокировки для данного ключа.
int availableIn(string $key)
Получить количество секунд до повторного доступа к "ключу".
string cleanRateLimiterKey(string $key)
Очистить ключ лимита скорости от символов Юникода.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Cache/RateLimiter.html