SPDY 是不是需要资源捆绑以减少响应时间
Posted
技术标签:
【中文标题】SPDY 是不是需要资源捆绑以减少响应时间【英文标题】:Is resource bundling needed on SPDY to reduce response timesSPDY 是否需要资源捆绑以减少响应时间 【发布时间】:2015-07-27 08:00:07 【问题描述】:这里我使用术语 bundling 来指代将 JS 和 CSS 资源连接在一起以减少 HTTP 请求的数量。 HTTP/2 解决了最初产生资源捆绑 Web 开发最佳实践的潜在问题(往返时间、资源获取阻塞)。但是,现在广泛部署的 SPDY 有多少与 HTTP/2 共享这些特征?
如果我使用像 CloudFlare 这样的 SPDY 感知 CDN,如果我不需要关心旧客户端,那么捆绑资源还有什么意义吗?
请注意,资源转换可能与捆绑分开进行,这个问题主要是关于响应时间,而不是关于编译代码。
【问题讨论】:
【参考方案1】:与 HTTP/1.1 客户端相比,HTTP/2(及其前身 SPDY,现已被淘汰)客户端可以向服务器执行更多的并发请求。
HTTP/1.1 一次只能处理 4 到 8 个并发请求,而 HTTP/2 通常最多可以处理 100 个。
资源的捆绑基本上是解决此 HTTP/1.1 限制的一种方法,而 HTTP/2 不再严格需要它。
我能想到继续捆绑的唯一原因可能是为了提高资源的 gzip 压缩效率(但这应该衡量以量化收益 - 如果有的话,它们可能真的很小) 或其他应用原因。
如果您不关心旧客户端,在典型情况下,您可以在使用启用 HTTP/2 的 CDN 时避免捆绑资源。
这应该可以简化您的 Web 应用程序的构建(不再需要捆绑阶段)而不会损失响应时间,但唯一可以确定的方法是衡量您的具体情况。
【讨论】:
以上是关于SPDY 是不是需要资源捆绑以减少响应时间的主要内容,如果未能解决你的问题,请参考以下文章