我正在尝试决定是否将 SSL 用于 webapp。它不处理信用卡或财务数据,但它确实存储出于个人/社会原因应该保密的信息。还有通常的用户注册和登录功能可能应该受到保护。
我知道 SSL 会降低性能,因为服务器和客户端都有加密和解密。此外,据我了解,加密数据的压缩程度不高,因此 Apachemod_deflate
可能无法正常工作。
性能受到的影响有多大?我计划进行一些测试,但我仍然会对基于经验的任何评论感兴趣。
我正在尝试决定是否将 SSL 用于 webapp。它不处理信用卡或财务数据,但它确实存储出于个人/社会原因应该保密的信息。还有通常的用户注册和登录功能可能应该受到保护。
我知道 SSL 会降低性能,因为服务器和客户端都有加密和解密。此外,据我了解,加密数据的压缩程度不高,因此 Apachemod_deflate
可能无法正常工作。
性能受到的影响有多大?我计划进行一些测试,但我仍然会对基于经验的任何评论感兴趣。
如果您担心性能,那么 SSL 应该只是您整体策略的一部分。我为一些财富 5 强公司管理多个网站,这些公司每天点击数百万次,独立访问者数以千计,而且我们不使用任何 SSL 卸载。我们发现我们的大部分加载问题都集中在我们使用的代码库和第三方库(主要是.NET,Java)上。
因此,如果您担心 SSL 负载,请不要担心,除非您还担心其他方面,例如您也在处理的大流量下的代码性能。这里的负载实际上意味着内存占用和 CPU ......修复流量负载很容易;这些其他负载最重要或首先发挥作用。
PKI 开销对每个连接的性能都有明显影响。使用对称密钥的实际数据传输开销相对较小。确切的比率和成本取决于您的特定硬件/软件堆栈。
一般来说,传输大量数据的开销很小;进行大量小连接的开销(例如,大量小图像的 https)要大得多。您可以选择要保护的页面部分,不必是全部或全部。
做你的测试和基准测试,我怀疑你会发现整体性能影响很小并且可以忍受。
是的,它确实会导致一定程度的负载,值得卸载到安装了 SSL 模块的负载平衡器。但是,如果您必须使用服务器,那么如果您处理任何敏感数据,它所产生的任何负载都值得其重视,尽管个人信息是否被视为敏感是一个不同的问题(除了登录,社交网络不倾向于使用 https) .
尝试ab 对HTTP 和 HTTPS 进行压力测试以查看差异,并确保仅在
vhost.conf
etc中的 :443 部分启用 mod_sslSSL 有自己的压缩协议,您可以监控客户端的使用情况。要提高请求速度,请务必使用SSL 会话缓存
性能会受到轻微影响,这就是为什么大多数网站通常只在注册和登录表单上要求 SSL 以确保数据安全发送,之后无需 SSL 即可恢复浏览。