代理带宽和并发怎么规划?连接数、吞吐与容量测试

标称带宽只是一个字段,真正的安全容量要从请求模型和错误拐点测出来
发布于
3

代理套餐写着“100M”,不代表一个应用随时能跑到100Mbps,也不代表提高并发就会线性增加吞吐。客户端到代理、代理到目标两段路径中的慢处,都会成为瓶颈;小请求还可能受延迟和连接建立影响,根本跑不满带宽。

容量规划要从业务工作负载出发,而不是先选一个最大的数字。

一、先区分五个容量指标

指标 含义 常见误区
带宽 单位时间可传输的数据能力 峰值写成持续保证
吞吐 实际完成的数据量或请求数 忽略目标服务器瓶颈
并发连接 同时保持的连接数量 等同于每秒请求数
请求速率 每秒完成的请求 忽略请求大小与延迟
流量 一个计费周期的数据总量 与瞬时带宽混淆

二、为什么标称100M测速只有一部分

可能原因包括共享带宽、峰值口径、单连接限速、跨网链路、TCP拥塞、丢包、代理CPU、目标限速和客户端性能。100M通常指Mbps而不是MB/s,理论换算还未扣除协议开销。

更完整的解释可参考代理带宽标称与实际测速差异

三、先描述业务工作负载

  • 请求是小JSON、大图片还是持续流;
  • 上传和下载比例;
  • 平均与95分位响应大小;
  • 目标地区和典型延迟;
  • 长连接还是短连接;
  • 峰值每秒请求和持续时间;
  • 允许的超时、错误率和排队长度。

没有这些数据,单纯问“多少并发需要多少带宽”无法得到可靠答案。

四、连接复用为什么影响容量

HTTP keep-alive和HTTP/2可以复用连接,减少TCP与TLS握手;但长连接太多会占用文件描述符、NAT状态和代理资源。切换节点或凭据时,旧连接还可能继续使用旧路径。

应设置合理的最大空闲时间、连接寿命、每目标连接数和队列上限,而不是无限建连接。

五、延迟如何限制吞吐

小请求在高延迟链路上,单连接要等待往返,吞吐容易被RTT限制。增加有限并发或使用多路复用可能提高利用率,但并发继续增长会造成排队、丢包和目标限流。

要观察延迟分位数和错误率,而不是只看总请求数。平均延迟会掩盖少量很慢的请求。

六、容量测试分几步

  1. 单连接验证协议、认证和功能;
  2. 低并发建立延迟与吞吐基线;
  3. 逐级增加并发,每级保持稳定观察;
  4. 记录客户端、代理和目标三端资源;
  5. 找到延迟或错误明显拐点;
  6. 降低到安全负载,验证是否恢复;
  7. 重复测试不同时段和代表性节点。

压测必须针对自有或明确获授权的端点,并控制总量。不能用增加并发测试第三方的访问限制。

七、测试记录哪些指标

类别 指标
业务 成功率、请求速率、队列和超时
延迟 中位数、95/99分位、连接与首字节
网络 吞吐、重传、丢包和连接重置
代理 活跃连接、认证错误、CPU和内存
目标 限流、5xx、处理时间和容量
成本 流量、节点数和测试时长

八、容量余量留多少

没有适用于所有业务的固定百分比。应根据增长速度、故障切换、扩容交付时间、峰值持续时间和业务重要性决定。余量至少要覆盖正常波动,并考虑一个节点故障后剩余容量能否承接关键流量。

备用节点也要定期做低频容量验证,不然只知道“能连”,不知道能否承载。

九、什么时候扩容,什么时候先优化

以下情况先优化:

  • 大量短连接重复TLS握手;
  • 请求重试没有退避;
  • 下载重复且没有缓存或断点续传;
  • NO_PROXY错误让内网流量绕代理;
  • 单个慢目标拖累整个连接池;
  • 日志或监控本身产生过多流量。

当配置合理、目标有容量、代理侧接近明确限制且业务持续增长时,再扩带宽、连接或节点。

十、节点横向扩展需要注意什么

多个节点并不自动提高可用性。要考虑:

  • 节点是否处于不同故障域;
  • 目标白名单是否允许所有出口;
  • 会话是否需要固定出口;
  • 调度器是否按健康和容量选择;
  • 写请求是否有幂等与去重;
  • 节点故障时是否会重试风暴。

API重试安全可参考代理超时与幂等恢复

十一、成本如何纳入容量模型

把节点、带宽、流量、连接、部署、监控和故障处置一起计算,不只看每条IP单价。企业预算方法见代理IP全生命周期成本模型

十二、形成一份容量报告

报告写清测试日期、网络、节点、目标、请求模型、并发阶梯、指标、拐点、限制和建议安全负载。不要把一次低峰结果宣传成长期保证。

容量规划的最终输出应该是“在这些条件下,每个节点安全承载多少,超过什么阈值扩容或降级”,而不是一个脱离工作负载的带宽数字。

常见问题(FAQ)

代理标称100M为什么测速达不到?
可能受峰值或共享口径、单连接、跨网链路、丢包、代理处理能力、目标限速和客户端性能影响。
并发连接数等于每秒请求数吗?
不等于。长连接可完成多个请求,请求速率还受响应大小、延迟、复用、处理时间和限流影响。
容量测试可以直接从高并发开始吗?
不建议。应先单连接和低并发建立基线,再逐级增加并观察延迟、错误和资源拐点。
代理容量余量应该固定留多少?
没有统一比例,应根据增长、故障切换、扩容交付时间、峰值和业务重要性确定。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600