【问题标题】:What's the optimal GZIP compression setting for IIS?IIS 的最佳 GZIP 压缩设置是什么?
【发布时间】:2008-11-12 00:46:17
【问题描述】:

您可以将 HcDynamicCompressionLevel 设置为 0-10 之间的任意值。我听说 10 不好(CPU 使用率高),但最有效的幻数是多少?

【问题讨论】:

  • 没有设置“10”; “9”是最高的。

标签: iis compression gzip


【解决方案1】:

动态压缩设置为 5 到 9DO 实际上会影响 CPU 负载。静态压缩只发生一次(直到文件被重新缓存),您可以将静态压缩设置为高。

这篇深入的文章推荐 4 用于动态压缩7 到 9 用于静态压缩。该文章使用您可以阅读和自行决定的信息来支持此建议。

http://weblogs.asp.net/owscott/archive/2009/02/22/iis-7-compression-good-bad-how-much.aspx

较小的动态页面可以受益于较高的动态压缩设置,因为较大的文件会增加 CPU 负载。在大小约为 200 KB 时,您将需要考虑较低的页面动态设置。另外,请注意,高动态压缩设置会增加从每个页面请求中获取第一个字节的时间。这些因素支持使用更受限制的设置 4 进行动态压缩。

再一次,静态资源可以使用高设置,因为只有第一个请求会影响 CPU 负载和客户端等待时间。然而,如果您提供许多大型静态资源,那么静态压缩也不会得到回报,因为您的缓存会填满并开始踢出资源;因此,压缩资源不会从缓存中重复提供服务中受益。

注意:没有“10”的设置。

还有两点需要考虑:

.config 文件中的 httpCompression 元素具有在 CPU 负载过高时禁用压缩的设置:

dynamicCompressionDisableCpuUsage="90"
dynamicCompressionEnableCpuUsage="80"

staticCompressionDisableCpuUsage="100"
staticCompressionEnableCpuUsage="80"

EnableCpuUsage 设置会在 CPU 负载降至指定值以下时重新启用压缩。

另一个设置禁用小文件的压缩:

minFileSizeForComp="2700"

在意识到某些压缩文件比原始文件大后,IIS 7.5 将压缩的最小文件大小从 IIS 7.0 中的默认值 256 字节提高到默认值 2,700 字节。我不知道 2,700 字节是否最好,但由于 IP 数据包可以合理地约为 1,400 字节,因此此设置将阻止压缩文件少于两个数据包。在任意质疑 Microsoft 提高此设置的决定之前,我希望进行实际测试或阅读专家的建议。

【讨论】:

    【解决方案2】:

    当 CPU 比现在慢两个数量级时,10 很糟糕。就目前的压缩算法而言,gzip 算法非常快,所以我将其设置为 10,看看会发生什么。

    【讨论】:

    • 没有设置“10”; “9”是最高的。
    • 我会把它调到 11。
    【解决方案3】:

    我发现将其设置为 8 可以提供相当不错的压缩率,而不会过多地敲击服务器。这将取决于您的服务器负载和规格。

    【讨论】:

      【解决方案4】:

      在我看来,这实际上取决于您的情况。如果您要处理大量大文件并且有一些 CPU 资源可用,那么更大的数量会更好。但是,由于您有更多的并发连接、更小的文件和不太强大的 CPU,因此数量越少越好。

      【讨论】:

        【解决方案5】:

        在我工作的公司中,启用了 ASPX 的动态压缩和动态生成的 javascript/css,页面似乎需要更长的时间来下载。我们尝试将压缩级别设置为 1 和最大值。 cpu 90% 但在没有压缩的情况下仍然最糟糕。是我的

        【讨论】:

          猜你喜欢
          • 2013-05-17
          • 2010-11-07
          • 2014-11-10
          • 2011-04-05
          • 1970-01-01
          • 1970-01-01
          • 2017-12-27
          • 1970-01-01
          • 2012-09-19
          相关资源
          最近更新 更多