Package | Description |
---|---|
org.dromara.hutool.core.thread.ratelimiter |
限流器实现,几种策略包括:
令牌桶(Token Bucket)
漏桶(Leaky Bucket)
固定窗口(Fixed Window)
滑动窗口(Sliding Window)
概念见:https://www.explainthis.io/zh-hans/swe/rate-limiter
|
Modifier and Type | Field and Description |
---|---|
protected RateLimiterConfig |
SemaphoreRateLimiter.config |
Modifier and Type | Method and Description |
---|---|
static RateLimiterConfig |
RateLimiterConfig.of()
创建限流配置
|
RateLimiterConfig |
RateLimiterConfig.setCapacity(int capacity)
设置容量,可以是总容量,或者每个周期的容量
|
RateLimiterConfig |
RateLimiterConfig.setMaxReleaseCount(int maxReleaseCount)
设置在刷新周期内释放的最大数量,不能超过
capacity |
RateLimiterConfig |
RateLimiterConfig.setRefreshPeriod(Duration refreshPeriod)
设置刷新周期,即每多少时间刷新一次,单位毫秒
|
RateLimiterConfig |
RateLimiterConfig.setTimeout(Duration timeout)
设置超时时间,即超过这个时间没有获取到许可,则返回false
|
Constructor and Description |
---|
SemaphoreRateLimiter(RateLimiterConfig config)
构造
|
SemaphoreRateLimiter(RateLimiterConfig config,
Semaphore semaphore)
构造
|
TokenBucketRateLimiter(RateLimiterConfig config)
构造
|
Copyright © 2025. All rights reserved.