在httpd上或在Tomcat的gzip?

在运行在Apache Tomcat servlet容器中的Java Web应用程序的前面:

  • 在Tomcat或httpd级别使用启用GZIP压缩更好吗?
  • 在Tomcat或httpd上启用SSL会更好吗?

应用被用在或多或less可靠的networking中(比公共networking更好,但比LAN差一些),包丢失,ping延迟等。应用大量使用大型dHTML,AJAX,静态和dynamic内容。 长时间的用户会话(小时)。

保持它在边缘,即连接到客户端浏览器的服务器。 压缩数据stream非常简单,它不应该对Apache进行太多的税收处理,而应该使用SSL来保护Apache和浏览器之间的通信。

[browser]---ssl+gzip---[apache]---ajp---[tomcat] (internet) (local) 

您不希望将SSL放在tomcat上,而直接通过Apache进行代理,因为这会浪费SSL协商的不必要stream量。 Ajp也有些压缩 (以一种说法)。

我将在Apache中启用gzip。 这允许您一次性压缩从那里提供的所有内容,如果您决定添加另一个应用程序或提供一些静态内容。

我不确定SSL的一部分,但我认为这也应该在Apache,因为一旦encryption的压缩和任何caching你可能希望使用将无法正常工作。