网上找了很多帖子说在参数中加-k (keep-alive) 但都没有用,有一个帖子说这是因为ab对HTTP1.1支持不够好,发送的是1.0的请求,以至于让Nodejs关闭了连接。(说是Nodejs的bug)
具体原因还有待考究,但问题已经解决。
解决办法:
例如原本请求:
ab -c 10000 -n 10000 -p ~/ReaT_Data.json -T ‘application/json’ http://—-:80/post
换成:
ab -c 10000 -n 10000 -p ~/ReaT_Data.json -H ‘Content-Type:application/json’ http://—-:80/post
即可。
原因可能是因为ab组织POST的头部的时候出现问题?
本文解决了使用ab工具进行高并发测试时遇到的问题,通过调整HTTP头部设置成功避免了因Nodejs关闭连接而导致的测试失败。
527

被折叠的 条评论
为什么被折叠?



