2015-10-16 107 views
15

HTTP/2已发布并由all major browsers支持。在主要的网络服务器上运行的实现有ApachenginxRack/Rails中的HTTP/2支持

但对于我们Rubyists来说,目前的选择似乎相当有限。曾几何时(2014年12月),Aaron Patterson为exploring ideas支持Rack 2.0中的HTTP/2,但尚未实现。他还发布了几个主要的可能性PumaWEBrick。这就是我设法找到的。

我的问题是,如果我有兴趣在Rails应用程序中使用HTTP/2,有什么选择,它们包含哪些HTTP/2功能,并且它们中的任何一个都可以用于生产?

回答

7

如果你想声称自己支持HTTP/2,你可以使用HTTP/2运行NGinX并使用Ruby后端,大致和普通的一样(https://www.nginx.com/blog/how-nginx-plans-to-support-http2/)。尽管如此,这不会为您提供HTTP/2特定功能,例如从服务器推送资产,而无需客户端请求。

我相信它会给你关心的基本HTTP/2的功能,每个连接(不慢启动)和复用多个请求的连接(不需要多个连接。)

上所以这很好。

+0

感谢您的回答。我现在就接受它,但我很乐意听到其他选择 - 包括(当然),如果可能的话,会在Heroku上运行。如果内存服务的话,可以在Heroku上运行nginx,但是这会破坏为我使用Heroku的目的,因为我突然不得不担心更多的配置和部署。 – ivanreese

+1

HTTP2将带来一组需要评估和实施的架构实践。让我们说缓存:你会想停止拼接... –

+1

使用Cloudflare会自动获得与上面提到的nginx相同的好处,并且可以坐在Heroku前面。它甚至支持服务器推送,尽管与Rails结合不太好。 – Jason