Skip to content

sunpe/bifrost

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bifrost

简介

基于Guava中令牌筒算法com.google.common.util.concurrent.RateLimiter实现的方法级别限流器工具, 项目以来guavaspring, 通过spring注解的方式来使用

Guava令牌筒简介

使用方式

bifrost依赖spring, 在本地classpath:props目录下添加limiter.properties配置:

default.isLimit=true  # 默认是否限流, 可以把default改成方法的key, 精确控制每个方法
default.premitsPreSecond=1024  # 默认发送速度, 可以把default改成方法的key, 精确控制每个方法

然后在需要限流方法上添加bifrost注解@Limiter, 注解参数:

param description
key 可选参数, 方法限流器key, 可以通过key在配置文件中配置是否限流和限流器令牌发送速度
permits 可选参数,方法需要的令牌个数,默认值为1
limitType 可选参数, 限流方式, 可选项为WAITRETURN, WAIT表示如果筒中没足够的令牌则阻塞等待, RETURN表示如果筒中没足够的令牌则直接返回, 默认限流方式为RETURN
code 必输参数, 被限流的请求的返回码
codeField 可选参数, 设置返回码的字段, 默认为code
message 必输参数, 被限流的请求的返回信息
messageField 可选参数, 设置返回信息的字段, 默认为message

注意事项

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages