我目前已在 IIS6 元数据库资源管理器中分配了此项:
<deflate>
HcDynamicCompressionLevel=9
HcOnDemandCompLevel=10
<gzip>
HcDynamicCompressionLevel=9
HcOnDemandCompLevel=10
我读到,级别值为 10 是不好的,会导致 CPU 急剧飙升。我是否也应该将 HcOnDemandCompLevel 更改为 9?这两个设置有什么区别?
答案1
HcDynamicCompressionLevel
控制对动态内容进行的压缩量,同样HcOnDemandCompLevel
控制对静态内容进行的压缩量。
定义来自II6 元数据库属性参考:
Hc动态压缩水平当压缩方案压缩动态内容时,属性指定压缩方案的压缩级别。
按需计算能力等级当方案按需压缩静态内容时,属性指定压缩方案的压缩级别。
压缩内容与 CPU 周期的权衡。由于动态内容每次提供时都会进行压缩,因此与压缩后缓存的静态压缩相比,动态内容对 CPU 的占用更高。
压缩级别的设置实际上取决于您提供的动态内容与静态内容的比例以及服务器的 CPU 承载能力(尤其是动态压缩)。因此,在压缩动态内容时更容易出现 CPU 峰值,这反映在较低的 9 级中,但如果您的静止的内容频繁变化这也可能会导致更多的 CPU 周期。
如果您的 CPU 没有被征税,那么请保持原来的级别,否则请在非生产环境中更改它们并测试考虑到页面加载时间的影响。
看使用 HTTP 压缩加快下载速度(IIS 6.0)了解更多信息。