我有一个在 linux 主机上运行的 http 服务器程序,比如 B,它监听一个端口并处理请求。 我正在尝试为此 http 服务器生成巨大的负载(每秒 >10k 个请求)。为此,我编写了一个 http 客户端程序,它会从主机 A 向此 http 服务器重复发送固定大小的请求。
现在,如果我在主机 A 上运行多个 httpclient 程序实例会产生什么影响。这会产生足够的负载吗?或者我可以从一台与一个服务器端口通信的机器上运行多少个 http 客户端有限制。
到目前为止,我的观察是增加实例数量并不能真正产生足够的负载,或者 http 服务器程序/操作系统不接受。而且我看到 cpu/内存/网络消耗很少。
有什么想法吗?我如何衡量瓶颈?
最佳答案
尝试使用 apache ab 对您的网络服务器进行基准测试。 这非常有效地生成并发 http 请求,并且是用于此目的的事实上的标准。
使用 ab,您可以轻松地在一个 URL 上创建高负载并分析结果
http://httpd.apache.org/docs/2.2/programs/ab.html
$ ab -n 1000 -c 5
总共创建 1000 个,5 个并发请求。 如何使用 ab 的好教程 http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html
关于http - 我可以模拟来自一台客户端机器的重 http 负载吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13349859/