背景:用tengine-2.3.2做的http2服务端。用的产线环境的nginx配置文件,一个页面163k。开启http2后进行压测。但是压测不理想。
模拟100个用户发起10W请求,每次压测后都会等待cpu负载恢复后再进行下一次压测
场景一:用ab做http1.1的压测,用nghttp2的h2load做http2的压测,QPS,总响应时间,单位时间内传输数据量等对比明显。
场景二:配置问价中注释掉http2参数,reload nginx,h2load-p参数指定http1.1协议。结果http1.1的各种数据和开启http2测试结果一样,
h2load -n100000 -c100 --h1 --npn-list=http/1.1 URL
h2load -n100000 -c100 URL
场景三:用hey压测,先注释http2参数,reload nginx,压测一次,加上http2参数,reload nginx,再压测一次。结果http2的性能比http1.1差远了。
hey -n 100000 -c 100 -h2 URL
hey -n 100000 -c 100 URL
求大神指点迷津,谢谢。