sentinel限流_Easy-Sentinel: 让SpringBoot限流变得更加简单

从名字上乍一看,Sentinel是阿里的限流工具,在实际的使用期间,还是有点复杂,对于小公司来并不适用,这也就是小编为何写这个工具的原因。目的就是让限流变得更加简单,最好达到零配置,和完全的无嵌入的整合到代码。但是为了让限流变得更容易监控和管理,小编不得不将初衷从非嵌入性,调整为半嵌入的方式。欢迎感兴趣或者喜欢研究的同学来使用,提出宝贵意见,供小编整改。或者一起来参与项目开发。(私信easy-sentinel: 获取github地址)

7370ef48fde60cd5d63603345ef1ddfd.png

EasySentinel

是一款专门为SpringBoot项目设计的限流组件,利用Redis+lua从而来实现高性能和分布式的能力。使用比较简单。通过半嵌入式的开发即可使用分布式注解。因为引用了Redis,并使用Redis作为注册中心,所以需要添加redis依赖。也正因为使用了Redis作为注册中心,所以天然的满足了分布式限流的能力.

625ddcb5073d66d6f8c782fe8025f01e.png

SpringBoot2版本之后官方强烈建议以此来替换spring-boot-starter-redis

eaeabdde7c0ee4a3b386765ce4c652ef.png

前端限流控制台

为了有更好的用户体验,控制台的开发已经提上日常。当前项目只有本人维护,欢迎前端或者后端的同学一起来参与

0312a947e26fe63dfabbf35f6dd9d87a.png

开始引入依赖(以发布maven仓库,可直接下载)

fc730c4064f59065e1533bef04602b20.png

使用案例

只用将需要限制的接口加上@EasySentinel即可实现限流能力

通过Qps设置当前接口的qps,fallback指定限流后的备用方法 。

9a1fa186853130666bb93368a1b48bb1.png

备用方法高级案例

前面只通过fallback实现备用方法的执行,但是平时为了让控制层的代码尽量保证精简,EasySentinel也支持通过工具类的方式来,指定blockHandlerClass处理类的方法blockHandler

7326a35c066dc1d4bac722ec1d5d8d1c.png

压力测试

ab -n 14 -c 1 http://127.0.0.1:8889/user/lxchinesszz
3ae828899d8b4674a20f1e6442717c45.png

私信easy-sentinel: 获取github地址,参与前端控制台请私信。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值