【发布时间】:2017-07-26 07:51:33
【问题描述】:
我想测试数百甚至数千个上传服务, 慢 个 HTTPS 连接同时进行。 我想拥有很多,比如说,3G 质量的连接, 每个都受到低带宽和高延迟的限制, 每个向服务器发送几兆字节的数据, 导致服务器处理大量并发的、长期存在的请求。
有许多负载生成工具可以同时生成数千个请求。 (我目前正在使用Locust,主要是为了让我可以接受 我现有的用 Python 编写的客户端库的优势。) 此类工具通常会尽可能快地运行每个并发请求 通过共享网络链接。
有多种方法可以调整 TCP 连接的表观带宽和延迟, 比如Linux的TC 以及方便的包装器,例如 Comcast。
据我所知,TC之类控制着共享链接 但他们不能限制单个请求。 如果你想限制单个请求,TC 效果很好。 理论上,许多客户端共享同一个受限制的网络链接, 每个请求都可以串行运行, 受限于带宽, 而不是同时执行大量请求, 一次几个包。 前者会导致执行的活动请求少得多 同时在服务器上。
我怀疑我想要的工具必须主动管理每个客户的发送 并接收以公平地限制它们。 有这样的工具吗?
【问题讨论】:
标签: networking scalability load-testing throttling