apache benchmark(ab)对Nodejs服压测POST请求时出现: apr_poll: The timeout specified has expired (70007) 问题的解决办法

来源:互联网 发布:xfiles theme知乎 编辑:程序博客网 时间:2024/06/01 19:10

网上找了很多帖子说在参数中加-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的头部的时候出现问题?

0 0
原创粉丝点击