我正在从Windows 7 / SP1客户端加载测试IIS 7.5(WinR2 / SP1)。我有一个脚本可以进行三次ab
调用,如:
start /B cmd /c ab.exe -k -n 500 -c 50 http://rhvwr2vsu410/HelloWebAPI/Home/SyncProducts > SyncProducts.txt
当并发性为> 5,我很快收到错误消息
apr_poll:指定的超时已过期(70007)
ab
停止发出请求。我甚至没有完成100个请求。
这在启动脚本后的30秒内发生。 ab文档页面提供的内容不多。 Related Stack Overflow question。 Server Fault related question。
答案 0 :(得分:26)
您必须拥有2.4版本并使用-s timeout
option。
您可以使用我的win32-x86二进制文件(在2013年2月8日的主干Visual Studio 2008下编译):
我使用了它:http://code.google.com/p/apachebench-standalone/wiki/HowToBuild和 http://ftp.ps.pl/pub/apache//apr/binaries/win32/apr-1.3.6-iconv-1.2.1-util-1.3.8-win32-x86-msvcrt60.zip
答案 1 :(得分:11)
ab --help
-s timeout Seconds to max. wait for each response
Default is 30 seconds
添加选项: -s 120 到ab命令,其中120是新超时。如果还不够,那就设置得更高......
答案 2 :(得分:7)
ab --help
-s timeout Seconds to max. wait for each response
Default is 30 seconds
-k Use HTTP KeepAlive feature
它对我有用
答案 3 :(得分:5)
听起来像是一个ab bug。
我在OS X上有类似的问题(现在你提到它发生在Windows上,我觉得ab更有信心ab是罪魁祸首)。我四处搜索并跟踪我的Web应用程序,但无法找到任何内容。然后我测试了nginx的静态页面,它仍然给了我错误。所以我去找了一个替代品...... jMeter。效果很好,但我仍然想知道ab问题是什么。