我为一个高流量网站提供托管设施,该网站将在未来 2 个月内迎来流量高峰。为了让它更好地执行,我想自己准备并放置一个前端服务器作为反向代理并通过它引导流量。
你建议我使用什么反向代理?
我过去使用过 Apache mod_proxy 并取得了一些不错的效果,但是有没有更高效的东西,更具体的工作?我需要它快速,尽可能缓存,并避免在不需要时发出请求。
我考虑过 HAProxy,但它似乎更倾向于提供高可用性(多个后端网络服务器)。在此设置中,整个网站托管在单个服务器上,运行一些 LAMP 内容。
我为一个高流量网站提供托管设施,该网站将在未来 2 个月内迎来流量高峰。为了让它更好地执行,我想自己准备并放置一个前端服务器作为反向代理并通过它引导流量。
你建议我使用什么反向代理?
我过去使用过 Apache mod_proxy 并取得了一些不错的效果,但是有没有更高效的东西,更具体的工作?我需要它快速,尽可能缓存,并避免在不需要时发出请求。
我考虑过 HAProxy,但它似乎更倾向于提供高可用性(多个后端网络服务器)。在此设置中,整个网站托管在单个服务器上,运行一些 LAMP 内容。
我们对Varnish有很好的体验。
其背后的公司 Redpill Linpro 在Varnish 产品网站上表示:
我们的经验是,这是非常正确的。除了在编写时考虑到作为反向代理的性能外,用于配置的 VCL 域语言非常强大,您可以获得关于它在工作时所做的非常详细的信息(参见问题 3425)。
Varnish 是开源的,拥有良好的社区,同时由公司积极开发。
我不能真正谈论相对性能,或者它在大负载下的性能,但我过去曾使用Squid进行 http 加速。它工作得很好。
如果您的网站包含大量动态内容,则缓存可能无法为您提供太多帮助。您可能想要检查网站是否正在发送有用的缓存控制标头,而不仅仅是立即使所有内容过期。
Varnish似乎是一种非常流行的反向代理。
另外,我相信您也可以将Nginx作为反向代理运行(我认为使用memcached作为选项。)