我使用 Redmine 和 Passenger 以及 Nginx。我只是想知道是否有理由使用打开 gzip选项?
据我了解,如果我打开此选项,CPU 使用率将会增加,但互联网连接速度较慢的用户能够更快地浏览页面。
但也许有任何建议或测试可以帮助我做出正确的决定。
答案1
好的问题应该是这样的:“有什么理由不使用 ngx_http_gzip_module 吗?”没有。
gzip_comp_level 1;
在保持较低 CPU 利用率的同时,对文本提供了相当好的压缩率。因此,即使是互联网连接速度很快的用户,最后一英里将会更快地获取页面。
Google 建议使用压缩来提高网络速度。
答案2
使用压缩后,您的 CPU 使用率会更高,但带宽利用率会更低。如果您按 GB 支付带宽费用(我们很多人都这样做),那么这也将使您受益。
@ChrisS 提出了很好的建议,但我会稍微扩展一下:
- 已经高度压缩的静态内容(例如音频和视频文件)实际上并没有从 gzip 编码中受益,因此没有理由浪费 CPU 尝试再次压缩它们。
- 静态文本内容(例如 CSS 和 JavaScript 文件)可以轻松压缩,而 nginx 可以轻松处理。适用
gzip on
于这些内容类型。 - 动态生成的内容应该由 Web 应用程序而不是 Nginx 进行 gzip 压缩,因为它更清楚内容是否应该是否被压缩。
答案3
为了:
- 动态内容
gzip off
- 静态内容:
- 易于压缩(html、css、js、xml)
gzip on
- 不易压缩(图形、音频、视频)
gzip off
。
- 易于压缩(html、css、js、xml)