WANG LH , Research & Development

限流

2021.05.31 22:05

单机限流

单机限流使用Guava的RateLimiter, 参考:

// 创建每秒钟执行10次
RateLimiter rateLimiter = RateLimiter.create(10);
// 尝试获取资源,如果已经超出10了,允许瞪大1s
rateLimiter.tryAcquire(1, 1, TimeUnit.SECONDS);

分布式限流

可以结合Redisc开发一套限流方案,接口层可以使用ngix做限流。