http 和 https 之间的性能有什么重大差异吗?我似乎记得读到过 HTTPS 的速度是 HTTP 的五分之一。这对于当前一代网络服务器/浏览器有效吗?如果是的话,有任何白皮书支持吗?
对此有一个非常简单的答案:分析您的 Web 服务器的性能,以了解您的特定情况下的性能损失。有几种工具可以比较 HTTP 与 HTTPS 服务器的性能(例如 JMeter 和 Visual Studio),并且它们非常易于使用。
没有人可以给你一个有意义的答案some有关您网站的性质、硬件、软件和网络配置的信息。
正如其他人所说,加密会产生一定程度的开销,但它高度依赖于:
- 硬件
- 服务器软件
- 动态内容与静态内容的比率
- 客户端到服务器的距离
- 典型会话时长
- 等等(我个人最喜欢的)
- 客户端的缓存行为
根据我的经验,大量动态内容的服务器往往受 HTTPS 的影响较小,因为与内容生成时间相比,加密时间(SSL 开销)微不足道。
大量提供相当小的静态页面集(可以轻松缓存在内存中)的服务器会遭受更高的开销(在一种情况下,吞吐量在“内部网”上受到影响)。
编辑:其他几个人提出的一点是 SSL 握手是 HTTPS 的主要成本。这是正确的,这就是为什么“典型会话长度”和“客户端的缓存行为”很重要。
许多非常短的会话意味着握手时间将压倒任何其他性能因素。较长的会话意味着在会话开始时会产生握手成本,但后续请求的开销相对较低。
客户端缓存可以通过几个步骤完成,从大型代理服务器到单个浏览器缓存。通常,HTTPS 内容不会缓存在共享缓存中(尽管一些代理服务器可以利用中间人类型行为来实现此目的)。许多浏览器会缓存当前会话的 HTTPS 内容,并且经常会跨会话缓存 HTTPS 内容。不缓存或较少缓存的影响意味着客户端将更频繁地检索相同的内容。这会导致为相同数量的用户提供更多的请求和带宽。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)