有什么理由使用ngx_http_gzip_module

我使用Redmine与Passenger和Nginx。 我只是想知道是否有任何理由使用gzip选项?

据我所知,如果我设置了这个选项,CPU使用率将会增加,但是互联网连接速度慢的用户会更快地获得页面。

但可能有任何build议或睾丸,帮助我做出正确的决定。

这个好问题听起来应该是这样的:“是否有任何理由不使用ngx_http_gzip_module”。 不,没有。

gzip_comp_level 1; 在CPU利用率保持较低的情况下,对文本提供了相当好的压缩比。 因此,即使是最后一英里具有快速互联网连接的用户也能更快地获得网页。

Googlebuild议使用“压缩”function来加快网页速度 。

使用压缩,您的CPU使用率会更高,但是您的带宽利用率会更低。 如果你用千兆字节来支付带宽(我们中的许多人都这么做),那么这也会对你有好处。

@ChrisS提出了很好的build议,但我会稍微扩展一下:

  • 已经被高度压缩的静态内容(如audio和video文件)并没有真正从gzip编码中受益,所以没有理由浪费你的CPU来重新压缩它们。
  • 基于静态文本的内容,如CSS和JavaScript文件可以很容易地压缩,而Nginx可以轻松处理。 对这些内容types使用gzip on
  • dynamic生成的内容应该由networking应用程序(而不是nginx)进行gzip压缩,因为它更好地了解内容是否应该被压缩。

对于:

  • dynamic内容gzip off
  • 静态内容是:
    • 轻松压缩(html,css,js,xml) gzip on
    • 不容易压缩(graphics,audio,video) gzip off