为什么HTTPS页面加载速度比HTTP速度快?
说实话,这有点儿.HTTPS比HTTP慢.无可否认. HTTPS通过HTTP工作,因此必须执行HTTP所做的一切以及更多.现在,通过良好的Web服务器配置,在当今的现代硬件上,普通用户几乎不存在HTTPS的计算成本,但它就在那里.但它也会减慢第一页的渲染速度,因为设置HTTPS连接需要几百毫秒的时间.对大多数人来说,这不是什么大问题,但它确实存在.
现在有一种观点认为,有人 – 无论是移动网络还是ISP或其他什么 – 可以通过注入广告等来改变HTTP,从而可能减慢网站的速度,但这并不是速度差异的原因.
网站更快的原因是因为它在使用HTTPS时使用HTTP / 2而不是在使用HTTP时. HTTP / 2比HTTP / 1.1快 – 特别是对于拥有大量资源的网站.
当然你可以说HTTP / 2只能通过HTTPS获得,而且这是真的*,推论不是 – 实现HTTPS不会自动为你提供HTTP / 2.
*从技术上讲,HTTP / 2根据规范要求HTTPS并不是真的,但所有浏览器制造商都表示他们只会通过HTTPS支持这一点,因此它基本上适用于所有意图和目的.
此外,示例网站还加载了360个小型且几乎相同(但非常不相同)的资源.确切地说,HTTP / 2非常擅长的东西.虽然普通网页正在增长,但大多数网页都不会在相同的图像附近加载360 – 因此网络延迟基本上是唯一的瓶颈.大多数还有其他问题与HTTP / 2大量改进的网络延迟问题无关.
HTTP / 2的速度提升非常令人印象深刻,它是未来,每个人都应该使用它,因为延迟是一个主要的瓶颈.但该测试网站是一个极端的例子.根据确切的网站构成,HTTP / 2将主要抵消HTTPS和in many cases more than offset it的成本 – 但这并不意味着HTTPS本身更快.
使用HTTPS有很好的理由,这篇文章非常适合列出所有内容(第一个除外).在我看来,HTTPS应该是默认值,每个人都应该转移到它 – 正是由于列出的其他原因.但是说HTTPS比HTTP更快就说谎了.或者,至少,它通过不解释为什么它可以更快来混淆真相.然后列出HTTP / 2作为第二个,看似无关,有理由进一步混淆读者!我只是不明白为什么他们不能将这两点合二为一并充分解释这一点所以这样的问题不需要问?对于该示例站点也是如此 – 为什么没有常见问题解答来解释为什么HTTPS显然更快?