HTTP/2与之前的协议版本的基准测试比较

3
我正在比较HTTP/2与先前版本的协议,例如HTTP 1.1,SPDY 3.1。我已经彻底研究了技术差异,现在正试图将HTTP/2与其以前的版本进行基准测试。但是,我不知道最好的方法是什么。
我已经设置了一个运行h2o的Fedora服务器,并在其中拥有一个测试网站,用于基准测试。我想要测量诸如页面加载时间(PLT),总往返次数/请求次数和总数据传输量,特别是头部大小等指标。
使用Chrome或Firefox等浏览器的开发者工具是否可以准确测量这些指标,还是会受到浏览器特定开销的过度影响?如果是这样,还可以使用哪些其他工具来完成此操作?
非常感谢任何帮助!
2个回答

3

大多数人似乎用浏览器的Web工具来衡量页面加载时间/首次绘制,或使用像 h2load 这样的工具来衡量更原始的HTTP传输性能。

也有一些工具像 http://http2.loadimpact.com/ 可以为您做这个任务。(Ragnar在他的幻灯片中也描述了他对比h2与h1的研究情况 his slides。)


你能在那些研究中添加一些链接吗,@Daniel? - dsign
“Studies” 会弹出浏览器的 Web 工具,并检查网络选项卡,查看使用 h2 和 h1 的时间长短。 - Daniel Stenberg
谢谢提供链接!那些幻灯片很棒! - dsign

1
大部分情况下,您可以信任浏览器报告的指标,但当服务器使用PUSH时,它们会非常不准确。
由于您控制网站,因此可以查看user timing interface,这将使您在浏览器内更轻松。
更复杂和涉及的替代方案是Wireshark网络转储和strace日志。
冒着多余的风险,我可以添加一些建议:尝试使用实验室条件。也就是说,在完全控制的网络中运行服务器和客户端。例如,在本地计算机上模拟的网络,然后使用netem模拟网络参数,如速率和延迟。如果您的服务器在Internet上,则您的测量结果将受到您无法控制的因素的影响,例如在那一天的那个时间有多少人正在访问Internet。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接