热搜词
发表于 2012-7-14 11:14:38 | 显示全部楼层 |阅读模式
前面说了启用Gzip 压缩减少带宽消耗以加速网站,今天说Windows2003服务器安装及设置教程——IIS优化第二篇:使用eAccelerator提高PHP执行效率。
先说一下eAccelerator是什么,它是一个自由开放源码php加速器,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍,他的官方网站地址是http://eaccelerator.net
下面就说说启用eAccelerator的具体步骤:
    确定已安装的PHP版本,如果忘记了安装的版本,可以使用phpinfo函数获得;
    下载该PHP版本对应的eAccelerator,这里聚友提供一个支持PHP版本5.2.0到5.2.8的压缩包,点击此处下载eAccelerator,如果您安装的PHP版本不在该范围内,请到官方网站下载。
    下载回去后选择PHP相对应的eAccelerator版本,解压到php的extension目录;
    打开windows安装目录下的PHP配置文件php.ini,根据如下所示在[Zend]之前添加eAccelerator配置信息;
    [eAccelerator]
    zend_extension_ts="D:\PHP\ext\eAccelerator0953_5.2.8.dll"
    eaccelerator.shm_size="32"
    eaccelerator.cache_dir="D:\PHP\temp"
    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"
    eaccelerator.keys = "shm"
    eaccelerator.sessions = "shm"
    保存php.ini;
    再次检查eAccelerator的相关配置:zend_extension_ts是eAccelerator的文件路径,检查该文件是否存在;eaccelerator.shm_size是eAccelerator使用的内存大小,根据需求及服务器配置修改,单位是M;eaccelerator.cache_dir是eAccelerator的缓存文件夹,要保证该目录的NTFS权限有Users组可读和可写入;eaccelerator.enable是是否启用eAccelerator,1为是,0为否;eaccelerator.optimizer是是否启用eAccelerator优化,1为是,0为否。
    使eAccelerator与Zend Optimizer 和平相处,在php.ini最底部添加如下代码:
    zend_optimizer.optimization_level=0
    通过这行代码,达到不冲突的目的
    再次保存php.ini,重启IIS
至此,Windows2003服务器安装及设置教程——IIS优化第二篇:使用eAccelerator提高PHP执行效率完成。
eAccelerator参数详解
下面说说eAccelerator的那些参数的具体意思:
eaccelerator.shm_size
指定 eAccelerator 能够使用的共享内存数量,单位:MB。
"0" 代表操作系统默认。默认值为 "0"。
eaccelerator.cache_dir
用户磁盘缓存的目录。eAccelerator 在该目录中存储预编译代码、session 数据、内容等。相同的数据也可以存储于共享内存中(以获得更快的存取速度)。默认值为 "/tmp/eaccelerator"。
eaccelerator.enable
开启或关闭 eAccelerator。"1" 为开启,"0" 为关闭。默认值为 "1"。
eaccelerator.optimizer
开启或关闭内部优化器,可以提升代码执行速度。"1" 为开启,"0" 为关闭。默认值为 "1"。
eaccelerator.debug
开启或关闭调试日志记录。"1" 为开启,"0" 为关闭。默认值为 "0"。
eaccelerator.check_mtime
开启或关闭 PHP 文件改动检查。"1" 为开启,"0" 为关闭。如果您想要在修改后重新编译 PHP程序则需要设置为 "1"。默认值为 "1"。
eaccelerator.filter
判断哪些 PHP 文件必须缓存。您可以指定缓存和不缓存的文件类型(如 "*.php *.phtml"等),如果参数以 "!" 开头,则匹配这些参数的文件被忽略缓存。默认值为 "",即,所有 PHP 文件都将被缓存。
eaccelerator.shm_max
当使用 " eaccelerator_put() " 函数时禁止其向共享内存中存储过大的文件。该参数指定允许存储的最大值,单位:字节 (10240, 10K, 1M)。"0" 为不限制。默认值为 "0"。
eaccelerator.shm_ttl
当 eAccelerator 获取新脚本的共享内存大小失败时,它将从共享内存中删除所有在最后 "shm_ttl" 秒内无法存取的脚本缓存。默认值为 "0",即:不从共享内春中删除任何缓存文件。
eaccelerator.shm_prune_period
当 eAccelerator 获取新脚本的共享内存大小失败时,他将试图从共享内存中删除早于"shm_prune_period" 秒的缓存脚本。默认值为 "0",即:不从共享内春中删除任何缓存文件。
eaccelerator.shm_only
允许或禁止将已编译脚本缓存在磁盘上。该选项对 session 数据和内容缓存无效。默认值为 "0",即:使用磁盘和共享内存进行缓存。
eaccelerator.compress
允许或禁止压缩内容缓存。默认值为 "1",即:允许压缩。
eaccelerator.compress_level
指定内容缓存的压缩等级。默认值为 "9",为最高等级。

全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-25 00:03 , Processed in 0.209661 second(s), 33 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team