当网络刚刚出现时,HTTP 连接相对较快,而 HTTPS 连接则非常慢。
在过去的几年中,HTTPS 连接的速度通常与 HTTP 连接的速度非常相似。有时,没有明显的差异。
发生了什么变化使得 HTTPS 连接速度可以与 HTTP 连接速度相媲美?
答案1
这种改善有多种原因
初始连接建立时间HTTPS 连接在建立初始 HTTP 连接后需要额外的握手。随着时间的推移,连接延迟减少(从使用调制解调器的约 100-200 毫秒到使用 DSL 的 10-100 毫秒,对于光纤到户或其他新技术,延迟甚至更低)。随着延迟的减少,额外的握手变得不那么明显。
预取/预连接 现代浏览器使用不同类型的预取和预连接方法来加快浏览速度。由于连接已经建立,上述握手可能根本不会引起注意。
其他东西比如SPDY也在这里提供帮助并使用相同的想法。
更强的计算能力由于加密,HTTPS 需要更多计算资源。更快的 CPU(在服务器和客户端)有助于提高 HTTPS 速度。此外,一些服务器使用特殊的加密硬件来提高性能。
政策变化有一个策略决定为 HTTP 和 HTTPS 花费多少资源。对于简单的单服务器设置,此策略由操作系统调度程序隐式定义。对于多服务器或多接口设置,它也可能是隐式的,仅取决于每台服务器的带宽和 CPU。
过去,HTTPS 被认为是奇特且昂贵的,因此没有得到很好的支持(例如在较慢的机器上运行)。
但如今,尤其是当你想到大型网站时,你可以肯定它们有明确的政策来处理和优先处理每项服务。而且由于越来越多的公司喜欢 HTTPS(例如 Google),它们也通过自己的政策来表达这一点。