Jboot v2.0-rc.8 发布,新增限流模块

栏目: Java · 发布时间: 7年前

内容简介:Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。Jboot v2.0-rc.8 主要是优化细节,并新增限流模块。在在以上配置中,配置了2个规则,分别是:

Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。Jboot v2.0-rc.8 主要是优化细节,并新增限流模块。

以下是限流的使用

使用方案1:通过配置来实现

jboot.properties 文件中定义如下:

jboot.limit.enable = true
jboot.limit.rule = /user*:tb:1,io.jboot.aop*.get*(*):tb:1
  • jboot.limit.enable : 限流功能的开关

  • jboot.limit.rule : 限流规则

规则说明:

  • 1、可以配置多个规则,每个规则用英文逗号隔开,以上配置了2个规则。

  • 2、规则分为三个部分,用冒号(:)隔开,分别是:资源、限流类型、限流参数值

  • 3、限流的类型有2种、分别是:tb 和 cc。tb:TOKEN BUCKET(令牌桶),cc:CONCURRENCY(并发量)

  • 4、星号(*)匹配任意字符,也可以是空字符。

在以上配置中,配置了2个规则,分别是:

  • /user*:tb:1

  • io.jboot.aop*.get*(*):cc:1

第一个规则:匹配 /user 开头的所有url地址,每个 url 地址,1秒钟之内只允许访问1次。

第二个规则:匹配 io.jboot.aop 开头的所有包名,并且  get 开头的所有任意参数的方法。并发量为 1。

使用方案2:通过注解  @EnableLimit

例如:

@RequestMapping("/")
public class IndexController extends JbootController {

    @EnableLimit(rate = 1,fallback = "fallbackMethod")
    public void index() {
        renderText("index...." );
    }

    public void fallbackMethod(){
        renderText("fallback...");
    }
}

通过使用 @EnableLimit(rate = 1,fallback = "fallbackMethod") 在方法  index() 方法配置后,当用户访问: http://127.0.0.1:8080 时,1秒钟内只有一次访问到  index() 方法,若有多次访问后,自动调用降级放方法  fallbackMethod() 执行。

@EnableLimit 支持的配置如下:

  • resource : 资源名称(不配置的时候默认为方法名,Controller 默认为对应的 url 映射)

  • type:限流的类型,默认为令牌桶。

  • rate:限流的数值,必须配置

  • fallback:降级方法,若配置,此方法必须在当前的类下定义。

Jboot v2.0-rc.8 更新内容如下:

更多Jboot的功能,请移步: https://gitee.com/fuhai/jboot/


以上所述就是小编给大家介绍的《Jboot v2.0-rc.8 发布,新增限流模块》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python基础教程(第2版)

Python基础教程(第2版)

Magnus Lie Hetland / 司维、曾军崴、谭颖华 / 人民邮电出版社 / 2010-7 / 69.00元

本书是经典教程的全新改版,作者根据Python 3.0版本的种种变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。本书层次鲜明、结构严谨、内容翔实,特别是在最后几章,作者将前面讲述的内容应用到了10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程。本书既适合初学者夯实基础,又能帮助Python程序员提升技能,即使是 Python方面的技术专家,也能从书里找到令你耳目一新的东西。一起来看看 《Python基础教程(第2版)》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具