zoukankan      html  css  js  c++  java
  • eAccelerator 配置参数详解

    eaccelerator.shm_size="32"

    eAccelerator 可以使用的共享内存的数量 (以兆为单位) . "0" 是指操作系统的默认值. 默认值是 "0".可根据服务器的实际情况来调整,16,32,64,128都是可以的。

    eaccelerator.cache_dir="/home/php/tmp"
    这个目录是给磁盘缓存使用. eAccelerator 在这里储存预先编译好的代码, 进程数据, 内容以及用户的自定义内容. 同样的数据也能被储存在共享内存中 (这样可以提高访问速度). 默认的设置是 "/tmp/eaccelerator".

    eaccelerator.enable="1"
    开启或关闭 eAccelerator。"1" 为开启,"0" 为关闭。默认值为 "1"。

    eaccelerator.optimizer="1"
    启或关闭内部优化器,可以提升代码执行速度。"1" 为开启,"0" 为关闭。默认值为 "1"。

    eaccelerator.check_mtime="1"
    打开或者关闭 PHP 的文件修改检查. "1" 是指打开, "0" 是指关闭. 如果您在修改以后重新编译 PHP 的文件,那么您应当设置为 "1". 默认值是 "1".

    eaccelerator.debug="0"
    开启或关闭调试日志记录。"1" 为开启,"0" 为关闭。默认值为 "0"。会将缓存命中得记录写入日志。

    eaccelerator.filter=""
    判断哪些 PHP 文件必须缓存。您可以指定缓存和不缓存的文件类型(如 "*.php *.phtml"等)
    如果参数以 "!" 开头,则匹配这些参数的文件被忽略缓存。默认值为 "",即,所有 PHP 文件都将被缓存。

    eaccelerator.shm_max="0"
    当使用 " eaccelerator_put() " 函数时禁止其向共享内存中存储过大的文件。该参数指定允许存储的最大值,单位:字节 (10240, 10K, 1M)。"0" 为不限制。默认值为 "0"。

    eaccelerator.shm_ttl="0"
    当 eAccelerator 获取新脚本的共享内存大小失败时,它将从共享内存中删除所有在最后 "shm_ttl" 秒内没有存取的脚本缓存。默认值为 "0",即:不从共享内春中删除任何缓存文件。

    eaccelerator.shm_prune_period="0"
    当 eAccelerator 获取新脚本的共享内存大小失败时,他将试图从共享内存中删除早于"shm_prune_period" 秒的缓存脚本。默认值为 "0",即:不从共享内春中删除任何缓存文件。

    eaccelerator.shm_only="0"
    允许或禁止将已编译脚本缓存在磁盘上。该选项对 session 数据和内容缓存无效。默认值为 "0",即:使用磁盘和共享内存进行缓存。

    eaccelerator.compress="1"
    允许或禁止压缩内容缓存。默认值为 "1",即:允许压缩。

    eaccelerator.compress_level="9"
    指定内容缓存的压缩等级。默认值为 "9",为最高等级。

    eaccelerator.keys = "disk_only"
    eaccelerator.session = "disk_only"
    eaccelerator.content = "disk_only"


    设置内容缓存的存放的地方,可以设置为:
    shm_and_disk 在共享缓存和硬盘(默认值)
    shm 默认存在共享内存,如果共享内存已满或大小超过 "eaccelerator.shm_max" 的值,就存到硬盘
    shm_only 只存放在共享内存
    disk_only 只存放在硬盘
    none 不缓存数据

    eaccelerator.allowed_admin_path = "/var/www/html/21andy.com/eaccelerator"
    这是控制面板的地址
    安装包里有个control.php,你把它复制到网站的任意目录,eAccelerator的管理监控页面,这个必须指定,否则查看缓存内容的时候会出错,其默认用户名密码为:admin/eAccelerator

    最后,来看一下我的 eAccelerator 设置

    ; eaccelerator
    [eaccelerator]
    zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so"
    eaccelerator.shm_size="128"
    eaccelerator.cache_dir="/tmp/eaccelerator"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="3600"
    eaccelerator.shm_prune_period="3600"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"
    eaccelerator.keys = "disk_only"
    eaccelerator.sessions = "disk_only"
    eaccelerator.content = "disk_only"
    eaccelerator.allowed_admin_path = "/var/www/html/21andy.com/eaccelerator"

    另外,再说下 eAccelerator 的安装

    # wget http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2
    # tar -jxvf eaccelerator-0.9.6.tar.bz2
    # cd eaccelerator-0.9.6
    # /usr/local/php/bin/phpize
    # ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config
    # make && make install
     
     

    1、 PHP加速器 eaccelerator 简介;

    eaccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍;

    官方主页: http://eaccelerator.net


    2、 安装和配置;

    首先您要安装好PHP,然后再来编译安装 eaccelerator,过程如下。我们从官方下的版本是 eaccelerator-0.9.5.2.tar.bz2


    2.1 编译安装;

    # tar xvf eaccelerator-0.9.5.2.tar.bz2
    # cd cd eaccelerator-0.9.5.2
    # export PHP_PREFIX="/usr"
    # $PHP_PREFIX/bin/phpize
    # ./configure \
    --enable-eaccelerator=shared \
    --with-php-config=$PHP_PREFIX/bin/php-config
    # make
    # make install



    注:通过export 来设置php所在的安装路径变量,我的PHP是安装在/usr目录下,系统用Slackware 12.0。其它系统如果默认安装也大体差不多;如果不一样,就自己指定一下;

    完成安装后,eaccelerator.so模块位于 /usr/lib/php/extensions目录中,您的系统如果和我不一样,您自己应该安装在哪了;

    # echo "/usr/lib/php/extensions" > /etc/ld.so.conf
    # ldconfig

    注:更新动态链接库地址;


    2.2 修改配置文件;

    我们首先要修改;php.ini,然后重启Apache;

    在php.ini文件中,加入;

      zend_extension="/usr/lib/php/extensions/eaccelerator.so" 注:模块的具体位置;
    eaccelerator.shm_size="16" 注:共享内存大小;
    eaccelerator.cache_dir="/home/eaccelerator" 注:缓存目录;
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="0"
    eaccelerator.shm_prune_period="0"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"

    注:其中,模块的具体位置必须正确,以您的系统为准;共享内存大小可以自己调整,感觉16M还是可以的,根据服务器的情况,你自己调一下。缓存目录可以自己指定,我们在这里指定的是 /home目录上的 eaccelerator 目录,如果没有,自己创建一个;权限是0777;

    以上的配置是把 eaccelerator 做为 Zend 的扩展模块来编译的办法。如果您的PHP是用安装模式编译的,要把 zend_extension改为zend_extension_ts 。

    如果您是把 eaccelerator 做为 PHP的一个扩展,要用下面的配置 ;

    extension="eaccelerator.so"
    eaccelerator.shm_size="16"
    eaccelerator.cache_dir="/home/eaccelerator"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"

    是不是生效了,您要查看 /home/eaccelerator 目录中,当Apache服务器启动了,你随便点几个页面,如果在这个目录中,出现文件了。那就是生效了。如果没任何文件,就要找原因了 ……

    这两个配置文件,是不是管用。要你自己根据情况来修改。

    # mkdir /home/eaccelerator
    # chmod 777 /home/eaccelerator


    注:创建缓存目录池,权限是777

    等这一切完成后,就要重启Apache服务器,如果没弹出什么错误,大多是正确的。查看一下缓存池,点几个页面,就知道是不是管用了。好象是比较简单。


    3、 关于本文;

    本文是介绍 PHP加速器 eaccelerator 的文档,并没有咆嘘eaccelerator有多好。我只看重效果,在 LinuxSir.Org 使用的过程中,感觉还是不错的。由于用了,所以就把这个东西介绍给新手或刚从事服务器管理的弟兄。PHP加速器有好多,但在自由软件下,目前不必花银 子的并且一直坚持开发的, eaccelerator就是其中一个。所以,我还是本着负责的态度把这个东西介绍给大家,呵呵~~~ 当然 LinuxSir.Org 已经用了好几年了,也用过 eaccelerator 的前身 TurckMMCache。


    4、 参考文档;

    eaccelerator的README文档;


    5、 相关文档;

    《关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明》

     
     
     
  • 相关阅读:
    iSCSI又称为IPSAN
    文档类型定义DTD
    HDU 2971 Tower
    HDU 1588 Gauss Fibonacci
    URAL 1005 Stone Pile
    URAL 1003 Parity
    URAL 1002 Phone Numbers
    URAL 1007 Code Words
    HDU 3306 Another kind of Fibonacci
    FZU 1683 纪念SlingShot
  • 原文地址:https://www.cnblogs.com/shuaixf/p/2270614.html
Copyright © 2011-2022 走看看