需要先配置好缓存,检查文件: /config/cache.php 。
使用
使用限流: RateLimiter 门面
<?php
use Illuminate\Support\Facades\RateLimiter;
//attempt 返回 false,表示超限
$isover = RateLimiter::attempt(
//标识:说明限流内容
'send-message:'.$user->id,
//限流:每分钟5次
$perMinute = 5,
//回调
function() {
//发送了一次数据
}
);
判断超限
RateLimiter::tooManyAttempts('send-message:'.$user->id, $perMinute = 5)
剩余次数
RateLimiter::remaining('send-message:'.$user->id, $perMinute = 5)
增加次数
RateLimiter::hit('send-message:'.$user->id)
清除次数
RateLimiter::clear('send-message:'.$message->user_id);
剩余秒数(已超限时)
RateLimiter::availableIn('send-message:'.$user->id)