限制下级用户的 API 请求流量

Yeastar 统一管理平台支持通过令牌桶算法限制下级用户 (托管用户和经销商) 的 API 请求流量。本文介绍如何为用户配置 API 限流。

使用要求

  • Yeastar 统一管理平台的固件为 87.16.0.51 或更高版本。
  • 下级用户已启用二次开发接口 (API) 功能。

操作步骤

  1. 登录 Yeastar 统一管理平台,进入 系统 > 二次开发接口 > 客户端限流管理

    所有已启用二次开发接口功能的下级用户都会显示在列表中。

  2. 操作 栏中,点击下级用户旁的 .

    页面上弹出 流量资源监控 窗口。

  3. 在弹出的窗口中,打开 限流管理 的开关,并完成下列设置。

    • 桶容量:指定桶可以存储的最大令牌数。
      提示: 建议设置此项的值为 生成速率 值的 2-3 倍。
    • 生成速率:设置每个时间间隔内要添加的令牌数量。时间间隔可在 时间窗口 中进行配置。
      注: 此项的值不能超过 桶容量 中设置的值。
    • 时间窗口 (单位:分钟):指定系统生成并添加令牌到令牌桶的频率。

    例如,配置 (桶容量:600,生成速率:300,时间窗口:3) 表示令牌桶最多可以存储 600 个令牌,系统每 3 分钟向桶中添加 300 个令牌。

  4. 点击 保存

执行结果

  • API 请求限流已启用, 系统将基于客户端 ID 限制指定下级用户的 API 请求流量。限流配置显示在客户端限流管理列表中。

  • 系统将监控下级用户的 API 请求数量,并每 5 分钟记录一次数据。若 5 分钟内的 API 请求数量接近 生成速率桶容量 中设置的值,且以下警告通知已启用,则会触发相应的警告。
    • 速率预警:API 请求流量超过 生成速率 设定值的 80%。一旦触发,在接下来的 30 分钟内不会被再次触发。
    • 突发预警:API 请求流量超过 桶容量 设定值的 80%。一旦触发,在接下来的 15 分钟内不会被再次触发。
    • 紧急限流:API 请求流量超过 桶容量 设定值。一旦触发,在接下来的 5 分钟内不会被再次触发。

    更多关于 API 请求流量监控的信息,请参见 查看下级用户的 API 请求流量