我有一个在linux主机上运行的http服务器程序,比如B,它监听端口并使用请求。 我试图为这个http服务器生成巨大的负载(每秒10万次请求)。为此,我编写了一个http客户端程序,它将从主机A重复向此http服务器发送固定大小的请求。
现在,如果我在主机A上运行多个httpclient程序实例会有什么影响。这会产生足够的负载吗?或者我可以从一台机器与一台服务器端口通信运行多少个http客户端。
到目前为止,我的观察是增加了实际数量并没有真正产生足够的负载或http服务器程序/操作系统不接受。我看到cpu /内存/网络消耗很少。
有什么想法吗?我该如何衡量瓶颈?
答案 0 :(得分:9)
尝试使用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