针对每个接口配置单位时间访问次数的上限,对访问次数已达到上限之后的接口,在统计时间段内的请求都予以拒绝,直至本统计时间段结束。

接口访问频度达到阈值时会进行告警,显示出现接口访问流量异常的接口的基本信息、异常信息等。

使用该功能需要在“配置管理 > 拦截器管理”页面中勾选【访问频度】选项。访问频度配置只对发布到APIGateway ESBServer的接口生效,如果接口发布类型是“HTTP路由”,需要在”路由配置“中编辑对应路由添加接口调用次数插件。如果是APIGateway ESBServer集群,使用频度配置需要启用 Redis ,请启用并配置好 Redis 的 IP地址和端口等参数,详细参见 [1.5.1.2 解压安装] 的配置。集群使用场景如下。APIGateway ESBServer1和APIGateway ESBServer2 都通过 Redis 控制频度,Governor 频度配置为 10 秒钟访问 5 次,则 APIGateway ESBServer1 调用 2 次后, APIGateway ESBServer2 能再调用 3 次,即 APIGateway ESBServer1和 APIGateway ESBServer2 的调用次数之和为 5 次。如果不启用Redis 则 APIGateway ESBServer1和 APIGateway ESBServer2 分别可以调用 5 次。

# 新增访问频度配置

  1. 管理人员登录系统,进入管理门户,点击菜单“访问安全”>“访问配置”,打开访问配置界面,点击“访问频度配置”页签。 4.1.9.1.2 访问频度配置 > image2023-9-26_15-31-9.png

  2. 点击“新增”按钮,弹出新增频度配置页面。  4.1.9.1.2 访问频度配置 > image2023-9-26_15-31-23.png 4.1.9.1.2 访问频度配置 > image2023-9-26_15-31-58.png

    参数 说明
    消费方编码 选择消费方编码。
    接口编码 选择接口编码。
    时长 访问时长,单位(秒)。
    访问次数 访问次数,单位(次)。
    生效server 需要进行频度控制的APIGateway ESBServer
  3. 配置完成后,点击“确定”,提示“保存成功”。

# 编辑访问频度配置

  1. 在访问频度配置页签,选择一条需要修改的访问频度配置,在操作列点击“编辑”按钮,弹出编辑频度控制页面。 4.1.9.1.2 访问频度配置 > image2023-9-26_15-34-59.png 4.1.9.1.2 访问频度配置 > image2023-9-26_15-35-19.png
  2. 修改完成后,点击“确定”保存。

#

# 删除访问频度配置

  1. 在访问频度配置页签,选择一条需要删除的访问频度配置,在操作列点击“删除”按钮,弹出“删除确认”的提示信息。 4.1.9.1.2 访问频度配置 > image2023-9-26_15-36-2.png 4.1.9.1.2 访问频度配置 > image2023-9-26_15-36-38.png

# 调用结果

  1. 如果访问频度在设置范围内则调用成功,客户端会显示调用结果,APIGateway ESBServer 后台无输出信息。
  2. 如果访问频度超出设置范围则超出的调用会失败,客户端返回信息为:“调用次数超过频度阀值”,APIGateway ESBServer 后台无输出信息。