• apache开启gzip的压缩功能


    gzip功能能在消耗一点点CPU使用率的情况下,大幅减少网页在传输过程中的带宽(大约60%-75%)。最近一直在折腾ctusky网站打开速度的事情,所有关到打开速度的我总是非常关心,下面就来介绍一下apache2下开启gzip压缩的方法。

    正确区分mod_deflate和mod_gzip

    所谓gzip,其实在早期的apache 1.x系列版本中没有内建网页压缩技术,所以才需要去gzip压缩,apache2官方在开发的时候,就已经把网页压缩考虑进去,内建了 mod_deflate模块,所以apache2就不需要使用到mod_gzip了,这两者的工作原理是类似的,还有启用mod_deflate这个网页 压缩的模块,功能和效率和mod_gzip是差不多的,甚至还好一些,就不需要再用mod_gzip模块了。

    开启apache2的gzip

    编译安装APACHE2.2.XX: 编译源码时要加上 –enable-deflate=shared

    在http.conf里会找到如下行; 如果没有请加上

    LoadModule deflate_module modules/mod_deflate.so

    如果是YUM RPM安装的话就自动开启了.压缩比例:约能压缩下70%的体积

    更多定制

    开启了压缩功能.可以很好的使用了,如果你还想更详尽的定制的话,请看下面:

    可以在http.conf后面加上这一段进行定制:(如非必要,用默认的就好了)

    <ifmodule mod_deflate.c>
    DeflateCompressionLevel 9
    AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
    AddOutputFilter DEFLATE js css
    </ifmodule>

    这样可以压缩一般网页中会用到的html、xml、php、css、js等格式档案输出,虽然会占用掉服务器处理器的一点点处理器时间,浏览者在接收 网页数据时也会消耗极短暂的一点点处理器时间,不过却可以大幅减少数据传输量,减少网络带宽被吃掉的情形。

    DeflateCompressionLevel 9是指压缩程度的等级,从1到9,9是最高等级。据了解,这样做最高可以减少8成大小的传输量(看档案内容而定),最少也能够节省一半。

    DeflateCompressionLevel 预设可以采用 6 这个数值,以维持耗用处理器效能与网页压缩质量的平衡。

    补充

    至于已经是压缩过的图片格式如jpg,音乐档案如mp3、压缩文件如zip之类的,就没必要再压缩了,因为这种档案你一开放服务器传输时压缩,处理 器时间会跑不完,而且就算你跑完,大小也一样,如果使用PHP函数之类压缩过的文件,httpd服务是不会再次压缩的,系统级别的处理,总会比应用级别的 效率高吧。

    Apache 的 mod_deflate 和 gzip compression 的对比.

    * 不使用任何压缩: 430KB
    * 仅使用 gzip: 323KB
    * 仅使用 Apache 的 deflate 模块: 247KB
    * 同时使用 deflate 以及 gzip: 247KB

    至於时间的部份, 差异倒不是很大, 大约都是在 10-20 秒左右。

  • 相关阅读:
    遍历卷,遍历磁盘
    宽字符
    GetSystemDirectory
    WIN32_FILE_ATTRIBUTE_DATA structure
    几条shell命令
    log4j学习(二)不同类的日志输出到不同的文件
    Java中的split和join
    如何使用socket进行java网络编程(二)
    如何使用socket进行java网络编程(一)
    log4j学习(一)最简单的例子
  • 原文地址:https://www.cnblogs.com/webu/p/3076811.html
Copyright © 2020-2023  润新知