💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
## RateLimiter:二级限流器 > 二级限流器用于抢购等高并发场景 该工具依赖redis,如果缓存不是配置的redis会无效 第一级 主要用于限制入口流量 第二级 主要用于限制同时操作主流程的人数 ## 使用 ~~~ $limit = new RateLimiter('test', 10, 2, 180, 100); $b= $limit->get($id); ~~~ ### 构造函数 ~~~ /** * RateLimiter __construct. * * @param string $name 限流器名称 * @param int $time 一级限流时间单位秒 * @param int $count 一级限流允许的次数 * @param int $time2 二级限流时间单位秒 * @param int $count2 二级限流允许的次数 */ ~~~ ### get方法 ~~~ /** * 获取令牌 * * @param string $id 标识当前用户的身份,默认为 sessionId * * @return bool */ ~~~ ### remove 方法 ~~~ /** * 删除令牌 * 当用户已经在规定时间内完成任务了,应该主动删除令牌,让更多人进来 * * @param string $id 标识当前用户的身份,默认为 sessionId */ ~~~ ### check 方法 ~~~ /** * 检查是否拥有令牌 * 如果有二级限速,只会检查二级 * * @param string $id 标识当前用户的身份,默认为 sessionId * * @return bool */ ~~~