我有一个 ruby on rails 网站,该网站托管在 nginx 反向代理后面的 unicorn webserver 上。我想评估在这种设置下使用 spdy 是否会提高我的性能。
具体来说,我需要以下方面的指导:
- 使用反向代理是否会抵消使用 spdy 带来的好处?
- 我可以使用什么性能/负载测试工具来评估使用 spdy 的收益?
- 有没有办法强制 nginx 只与 spdy 对话?
关于第二个问题,我发现 neoload 和 loadrunner 12 确实支持 spdy。
使用 neoload 时,我无法让它识别我的服务器正在使用 spdy,尽管 chrome://net-internals/#spdy 和http://spdycheck.org/告诉我它正在使用 spdy(我正在使用 spdy 3.1,当我使用 spdy 2 时 neoload 确实识别了它)。
对于 loadrunner,我还没有找到一种方法来确保它正在测试 spdy。我正在使用 spdy_url 函数,但文档没有告诉我 spdy_url 是否确保下面正在使用 spdy。一种确保的方法是将 nginx 配置为仅与 spdy 对话(第三个问题)。
答案1
这是我对您的问题的建议。
实际上,评估 spdy 的性能提升并不容易。这取决于您的网站风格。它包含很多小对象还是只包含几个大图像?有关更学术的答案,您可以参考此处:“SPDY 有多快“?”
如果您的网站现在是公开的,您可以使用WPT:http://www.webpagetest.org 通过启用或禁用 SPDY,您可以发现性能提升。
我认为如果客户端无法使用 SPDY,nginx 和 mod_spdy 都会使用纯 HTTPS。如果你想要一个只使用 SPDY 的 HTTPD,你可以尝试传输层,提供了一个spdy代理工具--shrpx