我目前正在我的服务器上运行大量配置基准测试,使用围城,我想尝试 SPDY 协议(使用 Apache 的 mod_spdy) - 但 siege 使用 HTTP。
您是否知道有什么工具可以让我比较在使用和不使用 SPDY 的高并发环境中我的网站的性能?
答案1
您的 SPDY 设置的性能显然取决于堆栈的实现,并且您应该知道与“常规” HTTP 或 HTTPS 会话相比的处理成本,但是......请记住,SPDY 的主要目的是减少呈现典型网页(由您的访问者看到)的延迟和开销,而不是优化您的服务器端响应时间。
更具体地说:如果你想对 SPDY 进行基准测试,siege/ab 和相关工具并不具有代表性。所有这些工具都会对单个 URI 产生负载并对其进行锤击。这是一种对服务器进行压力测试的有用策略,但它远不能测试 SPDY 的优势。要测试 SPDY,你需要一个工具(最有可能是浏览器),它将下载页面,和请求页面上的所有子资源,允许您重用 SPDY 连接。
我们最近使用 Android 版 Chrome 运行了一些基准测试,您可以在此处查看设置:https://developers.google.com/speed/articles/spdy-for-mobile
最后。如果你确实需要一个命令行客户端来测试 SPDY,请查看传输层。它随附了spdycat
允许您对服务器发出类似 curl 的请求。它不是基准测试工具,但它可以帮助您入门。
答案2
Jetty 提供了异步纯Java SPDY 客户端您可以用它来模拟浏览器请求、测量延迟等等。
除此之外,Jetty 还提供了异步HTTP 客户端,这样您就可以比较两种情况下您的网站的表现。