1

使用纯 HTTP,无 cookie 域是一种优化,可避免为页面资源发送不必要的 cookie 标头。

但是,SPDY 协议会压缩 HTTP 标头,并且在某些情况下会消除不必要的标头。那么我的问题是,SPDY 是否使无 cookie 域无关紧要?

此外,是否应该将页面源及其所有资源托管在同一域中以优化 SPDY 实现?

4

1 回答 1

5

SPDY 是否使无 cookie 域无关紧要?

有点,主要是……但不完全是。

首先,使用“无cookie域”至少有两个很好的理由:一是避免额外的标头并减小请求的大小,二是避免泄露任何有关用户的私人或安全信息。每个都是有效的,彼此独立。因此,显然仍然有理由在 HTTP 2.0 下拥有一个“无 cookie 域”以确保安全和隐私。

此外,压缩也不是灵丹妙药。建立压缩/解压缩上下文不是免费的,并且根据使用的压缩方案、分配的缓冲区大小等,大 cookie 可能会完全破坏压缩器的性能。在 spdy/v3 之前,使用了 gzip 压缩器(滑动窗口),并且给定足够大的 cookie,您将对压缩器的性能产生负面影响(程度因浏览器而异,基于实现)。在 spdy/v4 中,gzip 压缩器已经过时,并且正在从头开始实施一种全新的算法——由于 v4 还没有出现,现在推测性能细节还为时过早。话虽如此,在大多数情况下,你应该没问题。我只是强调边缘情况。

此外,是否应该将页面源及其所有资源托管在同一域中以优化 SPDY 实现?

是的,在可能的范围内——这会给你最好的表现。这里也有一些警告:原始服务器的高数据包丢失,或者没有窗口缩放的高 BDP 产品。但是很有可能,如果您使用的是具有良好连接性的合理托管服务提供商,那么这些都不是问题。

于 2012-12-19T08:39:52.507 回答