本文档介绍如何向云调度 GTM 上报负载。如果您在配置 GTM 实例时选择的路由模式是负载反馈路由模式,您需要向云调度 GTM 上报负载。云调度 GTM 可以根据您上报的负载对流量的分配比例进行动态调整。
对于智能路由策略的容量优先路由模式,云调度 GTM 会在不超出您为目标地址或地址池预设的容量的前提下,返回用户访问延时最低的目标地址。但是,容量优先路由模式存在以下问题:
在智能路由策略的负载反馈路由模式下,您可以调用 上报负载 API 把地址池或目标地址的实时负载、目标负载和实际容量等信息上报到云调度 GTM。云调度 GTM 会根据您上报的信息动态调整地址池或目标地址的流量分配,确保地址池或目标地址的实时负载不超过目标负载。云调度 GTM 还会根据您上报的信息预测用户请求的分布情况,从而更准确地调度流量。负载还没有被上报时,所有地址池或目标地址的实时负载和目标负载都默认是预设容量的 80%。
说明
智能路由策略的负载反馈路由模式在 “容量”的基础上,又引入了“负载”的概念。负载是一个正整数,用来表示地址池或地址实际接收到的用户流量。您可以根据机房当前被使用的带宽和活跃连接数等指标为机房设置一个负载值。负载是一个相对值,因此您无需输入地址或地址池的真实带宽或并发连接数,但您需要确保不同地址或地址池之间使用统一的负载单位。 容量用来表示地址池或目标地址的流量承载能力。因此,负载不能超过容量。负载和容量必须使用相同的估算标准和单位。例如,如果容量是根据机房的带宽估算的,负载也必须是根据机房的带宽估算的。
例如:
在 快速入门 的示例业务场景中,北京机房的流量承载能力发生了变化:IP 地址为 203.0.113.1
机房的容量从 200 降低到了 100;IP 地址为 203.0.113.2
的机房的容量从 100 降低到了 50。
北京机房的当前负载如下:
203.0.113.1
机房的当前负载是 120。203.0.113.2
机房的当前负载是 60。您希望北京机房调整后的的负载满足以下要求:
203.0.113.1
机房的负载不超过 90。203.0.113.2
机房的负载不超过 45。参见以下步骤在负载反馈路由模式中上报目标地址的负载。
调用 上报负载 API,分别为 203.0.113.1
和 203.0.113.2
两个目标地址上报当前负载和目标负载。
地址 | 当前负载 | 目标负载 | 容量 |
---|---|---|---|
| 120 | 90 | 100 |
| 60 | 45 | 50 |
POST https://open.volcengineapi.com?Action=UpdateLoad&Version=2023-01-01 { "GtmId":"8234cb50-f957-4be9-b515-55c5d419ea9e", "Timestamp": 1700805259, "Statistics": [ { "AddrValue": "203.0.113.1", "CurrentLoad": 120, "TargetLoad": 90, "Capacity": 100 } { "AddrValue": "203.0.113.2", "CurrentLoad": 60, "TargetLoad": 45, "Capacity": 50 }, ] }
定期(例如每分钟)监测机房的负载变化。如果机房的当前负载发生了变化,您需要再次调用 上报负载 API上报数据。云调度 GTM 会每分钟根据您最新上报的数据调整地址池或目标地址的流量分配。