Apache Tomcat 前面的缓存服务器

Apache Tomcat 前面的缓存服务器

我们有一个网站,其当前架构如下:

前端有 squid,用于缓存图像。然后是启用了 mod_rewrite 的 apache httpd。httpd 然后与 apache tomcat(使用 mod_jk)对话,以便进行动态请求并自行处理 js、css 等静态内容。Apache httpd 将干净的 URL 重写为 tomcat 处理的原始 URL(带有丑陋的 URL 参数)。mod_rewrite 配置中有超过 100 条重写规则。我们还将某些 php 内容整合在一起,以便与 facebook 配合使用。php 文件由 apache 提供,但负载明显较少。

因此,目标是能够积极地缓存静态文件(js、css、图像),并将动态内容直接提供给 tomcat。我们需要 url 重写(可能可以在 tomcat 本身中完成)、gzip/deflate 支持以及对 php 的支持。

因此,考虑到我们的需求,是否可以将像 squid/varnish 这样的缓存服务器直接放在 tomcat 前面以实现这一点,或者我们是否需要在两者之间放置一个像 nginx/lighttpd 这样的 Web 服务器,因为我们需要 php?

答案1

为什么不同时使用 apache/lighttpd 作为代理/缓存服务器和 php 解释器?

lighttpd 作为缓存代理: http://forum.lighttpd.net/topic/4845

apache 作为缓存代理: http://httpd.apache.org/docs/2.2/caching.html

相关内容