【发布时间】:2016-05-25 10:27:39
【问题描述】:
我有一个名为 algebra.com 的中型网站。截至今天,它在美国的 Quantcast 评级中排名第 900 位。
在其使用高峰期,在工作日晚上,它每秒处理超过 120-150 个对象查询。几乎所有的对象,包括图像,都是动态生成的。
它每月有 750 万次页面浏览量。
它是 Ubuntu 上 Apache2 的服务器,并辅以 Perlbal 反向代理,这有助于减少正在使用的 apache 插槽/子进程的数量。
我花费了大量时间来研究 HTTP 的性能,结果是一个运行良好的网站。
现在需要过渡到 HTTPS(这里完全有道理,因为我有登录和注册用户),我想确保我不会以灾难告终。
但是,我担心我最终可能会遇到性能噩梦,因为 HTTPS 会话持续时间更长,而且我不确定反向代理是否能像使用 HTTP 一样提供帮助。
其次,我想确保我有足够的 CPU 容量来处理 HTTPS 流量。
同样,这不是一个每秒点击几下的小型网站,我们说的是每秒点击 100 多次。
此外,我在一台服务器上运行多个站点。
例如,我是否可以有一个反向代理,它支持一个 IP (SNI) 上的多个虚拟域,并将 HTTPS 流量转换为 HTTP,这样我就不必加密两次(一次由 apache 进行代理,并且一次由客户端浏览器的代理)?
让多个网站(有些是大型网站)由 HTTP 和 HTTPS 混合提供服务的“最佳实践方法”是什么?
也许我可以继续在端口 80 上运行 perlbal,并在端口 443 上运行 nginx? nginx可以配置为多个HTTPS站点的反向代理吗?
【问题讨论】:
标签: apache nginx https reverse-proxy