나는 이것을 두 개의 파일로 nginx 1.3.9에서 테스트했으며 다음은 다양한 수준에서 얻은 결과입니다.
text/html
-phpinfo () :
0 55.38 KiB (100.00% of original size)
1 11.22 KiB ( 20.26% of original size)
2 10.89 KiB ( 19.66% of original size)
3 10.60 KiB ( 19.14% of original size)
4 10.17 KiB ( 18.36% of original size)
5 9.79 KiB ( 17.68% of original size)
6 9.62 KiB ( 17.37% of original size)
7 9.50 KiB ( 17.15% of original size)
8 9.45 KiB ( 17.06% of original size)
9 9.44 KiB ( 17.05% of original size)
application/x-javascript
-jQuery 1.8.3 (비 압축) :
0 261.46 KiB (100.00% of original size)
1 95.01 KiB ( 36.34% of original size)
2 90.60 KiB ( 34.65% of original size)
3 87.16 KiB ( 33.36% of original size)
4 81.89 KiB ( 31.32% of original size)
5 79.33 KiB ( 30.34% of original size)
6 78.04 KiB ( 29.85% of original size)
7 77.85 KiB ( 29.78% of original size)
8 77.74 KiB ( 29.73% of original size)
9 77.75 KiB ( 29.74% of original size)
이것이 얼마나 대표적인지 잘 모르겠지만 예제로 사용되어야합니다. 또한, 나는 계정으로 CPU 사용량을 촬영하지 않은 그러나이 결과에서 이상적인 압축 수준은 사이가 될 것으로 보인다 4
및 6
.
또한 gzip_static
모듈 을 사용하는 경우 파일을 사전 압축 할 수 있습니다 (PHP).
function gzip_static($path)
{
if ((extension_loaded('zlib') === true) && (is_file($path) === true))
{
$levels = array();
$content = file_get_contents($path);
foreach (range(1, 9) as $level)
{
$levels[$level] = strlen(gzencode($content, $level));
}
if ((count($levels = array_filter($levels)) > 0) && (min($levels) < strlen($content)))
{
if (file_put_contents($path . '.gz', gzencode($content, array_search(min($levels), $levels)), LOCK_EX) !== false)
{
return touch($path . '.gz', filemtime($path), fileatime($path));
}
}
}
return false;
}
따라서 모든 요청에서 CPU를 희생하지 않고도 최상의 압축을 얻을 수 있습니다.