使 Web 应用程序支持的最佳实践是什么 HTTP/2

What's the best practices for making a Web application to support HTTP/2

我正在尝试 HTTP/2 并想知道是否有任何最佳实践可以让 Web 应用程序在以下两个方面利用新协议:

  1. 服务器端和
  2. 客户端

还有...我应该从哪里(什么时候?)开始?花费 HTTP/2

的努力最少的变化是什么

更新:

假设:用户已经在使用支持 HTTP/2.

的浏览器

更新二:

关于这个主题的一些很好的资源:

您不需要对应用程序进行任何更改即可部署HTTP/2:大多数事情开箱即用。

也就是说,如果您是从头开始,这里有一些最适用的提示:

  • 开始使用 HTTPS 开发您的应用程序。您不希望在部署应用程序时出现 URL 问题,因为通过 http:// 获取某些资源(例如 Google 字体或任何其他 CDN 资源)不再有效。使用一些工具需要五分钟(只需 google "Five minutes to HTTPS development URLs")。
  • 考虑一下您是否希望将通常 link 的一些资源托管到您自己服务器中的 public CDN。 HTTP/2 对于 linking 到 CDN 中的某些资产的主要性能原因是,如果您没有在该 CDN 上托管整个站点,这些资源可能已经在用户的缓存中。如果不是,则打开一个新连接 takes in average half a second.
  • 不要设置捆绑。改为设置 HTTP/2 推送。然后去拿你最喜欢的模块管理器。也尝试一下 Web 组件和 PolymerJS。当您不关心捆绑和 round-trips.
  • 时,它们简直太棒了

如果您使用的服务器使用机器学习来配置 HTTP/2 自动推送(例如,ShimmerCat),那么第三个技巧是保持网页结构的可预测性。