挡板功能

挡板功能用于暂时保持一段时间的当前请求,用于后置服务的升级或延迟访问等操作,一段时间后或自动释放,或人为释放。连接保持过程中,gateway会持有当前连接,同时释放当前执行线程,当挡板关闭时当前请求继续执行,在请求者看来感知不到任何变化,只是有一定的延迟。挡板控制器也采用树形的级联控制结构,只有当父节点拥有控制权时子节点在可以接手进行控制。默认情况下是隔一秒对所有被挡住的请求遍历一次。

挡板控制功能示意图如下:

下面是controller属性:

属性 描述
id 标识,唯一
pid 父节点控制器id
available 是否启用
matcher 匹配表达式,只有匹配成功后才执行控制
targetExpression 控制对象表达式
holdTime 保持时间,默认10000ms,设置为0则为一致保持
maxHoldNum 最大保持链接数目,默认1000
continueWhenTimeout 当保持时间到达时,是否继续执行请求,默认为true

配置:

holdOn:
  values:

- {id: holdOn2, holdTime: 20000, maxHoldNum: 2000, available: false, continueWhenTimeout: true}
- {id: holdOn1, holdTime: 10000, maxHoldNum: 1000, available: false, continueWhenTimeout: true}
  params: {p2: '${ip}', p1: constants_abc}
    localRecognizers:
- id: recognizer1
  keyMap: {aaa: '${aaa}', bbb: '${bbb}'}
  type: map
    available: false
    pipeType: direct
    inbound: true
Copyright © 民生科技有限公司 2019 all right reserved,powered by Gitbook联系方式: wanglihang@mskj.com
修订时间: 2019-09-03 17:48:17

results matching ""

    No results matching ""