限速是在给链路分配优先级
复制流量具备可延迟的特性:短时间排队不会影响业务,只要积压能在可接受时间内追平。因此限速的实质是确定一个不会导致积压持续增长的下限,并把峰值让给同一链路上的其他业务。限速设得过低,积压单调增长、RPO 持续劣化;设得过高,等于没有限速,其他业务仍会被挤占。合理的取值需要用源端变化量峰值与链路实际可用速率的实测数据来校准。
限速要素
| 作用点 | 可在复制发起端或接收端设置,位置不同效果不同 |
|---|---|
| 速率口径 | 区分链路标称速率与业务有效带宽,需考虑协议开销 |
| 时间窗 | 支持按时间段生效,用于避开业务高峰 |
| 保障与上限 | 既设上限也设保障速率,避免被其他流量挤占 |
| 校准依据 | 源端变化量、积压追平时间与可接受的 RPO |
| 监控要点 | 实际速率、积压量以及积压是否在收敛 |
典型使用场景
- 复制链路与生产业务专线共用,需要为业务保留带宽
- 夜间批量窗口与复制任务争抢带宽,需按时段分别设置
- 业务扩容后积压缓慢增长,通过调整限速值恢复收敛
- 链路故障恢复期需要临时放开速率以尽快追平
- 多套复制关系共享一条链路时,按重要性分配各自速率
- 评估压缩与去重效果,判断限速值是否还有下调空间
限速策略对比
| 策略 | 适用工况 | 优点 | 代价 |
|---|---|---|---|
| 全程固定限速 | 业务波动小、链路容量有限 | 配置简单,行为可预测 | 高峰时可能来不及传输 |
| 分时段限速 | 白天业务高峰、夜间批量窗口 | 兼顾业务与复制需求 | 时段切换需与真实业务节奏对齐 |
| 保障加上限 | 链路被多类业务共享 | 复制流量不被饿死 | 依赖链路侧队列与策略支持 |
| 压缩去重后再限速 | 数据可压缩性较高 | 等效带宽明显提升 | 压缩比随数据类型波动 |
| 仅对备份限速 | 备份与复制共用链路 | 保护复制优先地位 | 备份窗口可能被拉长 |
限速校准思路
限速校准思路
# 一、先测量:连续观察源端变化量峰值与链路实际可用速率
# 二、定上限:上限设在峰值变化量的 1.5 至 2 倍以上,避免积压增长
# 三、设保障:为复制流量配置保障速率,防止被其他业务挤占
# 四、分时段:业务高峰收紧,批量窗口放开,按实际业务节奏调整
# 五、留补传:链路中断后的追赶速率应与日常限速一并规划
# 六、看趋势:持续观察积压量,收敛则合适,持续增长则需上调限速与补传场景需要一起考虑。日常限速值在链路中断后往往不足以在可接受时间内追平积压,所以通常要为恢复期准备更高的临时上限或独立的追赶窗口。如果限速在链路上是硬性上限,中断后的追赶时间会直接决定实际 RPO,这一点在规划阶段容易被忽略。