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

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。Jboot v2.0-rc.8 主要是优化细节,并新增限流模块。 以下是限流的使用 使用方案1:通过配置来实现 在 jboo...

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/


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

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

Coding the Matrix

Coding the Matrix

Philip N. Klein / Newtonian Press / 2013-7-26 / $35.00

An engaging introduction to vectors and matrices and the algorithms that operate on them, intended for the student who knows how to program. Mathematical concepts and computational problems are motiva......一起来看看 《Coding the Matrix》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码