给PHP运行环境增加eAccelerator缓存

网上很多高手都推荐给PHP增加缓存机制以提高系统性能,今天抽空给某台Nginx+Php的Linux服务器安装了eAccelerator缓存软件。先给大家展示下缓存安装以后的效果。
clip_image002
(图1)
图1是没有安装eAccelerator软件的ab测试截图。可以看出,当前系统的吞吐量为34.83页/秒,打开测试页的平均时间为28.713ms。
clip_image004
(图2)
图2是安装eAccelerator之后的ab测试截图,可以看出,此时系统的吞吐量为102.70页/秒,打开测试页的平均时间为9.737ms。怎么样,效果是不是非常的明显,此时系统的平均访问时间较没有安装缓存之前提升了3倍!
接下来,我来说一下配置的过程。安装此扩展非常的简单,首先我们要先下载到eAccelerator的源代码。(http://sourceforge.net/projects/eaccelerator/),之后我们对下载到的文件进行解压缩。
cd /home/kaisir
wget http://sourceforge.net/projects/eaccelerator/files/eaccelerator/eAccelerator%200.9.6.1/eaccelerator-0.9.6.1.tar.bz2/download
tar xvf eaccelerator-0.9.6.1.tar.bz2
再接下来我们要用到php自带的一个工具”phpize”此工具可以在不重新编译php的情况下,动态的安装扩展。在此例中,我们的工具位于/usr/local/php/bin/下,如果不记得之前编译安装php时工具放在那里了,可以使用如下命令进行查找:
Find / -name phpize
使用phpize生成eAccelerator的编译配置文件,在进入刚才解压的目录,之后执行phpize。
cd eaccelerator-0.9.6.1
/usr/local/php/bin/phpize
此时phpize会自动生成编译所需的配置文件,接下里我们需要对其进行编译安装
./configure –enable-eaccelerator=shared
我在进行这步的时候,系统报错了,提示找不到php-config文件,不过同时系统也给出了解决方法,让附加参数–with-php-config=PATH进行重新配置,于是我执行:
./configure –enable-eaccelerator=shared –with-php-config=/usr/local/php/bin/php-config
此时配置顺利完成,之后进行编译及安装。在shell下执行:
make
make install
至此,编译安装过程结束,之后我们需要对php的配置文件,php.ini进行配置。在php.ini文件中,首先查找是否存在“[Zend Optimizer]”这一节的内容,如果存在,应将eAccelerator的配置内容放在这节内容之前。之前我放到这节内容之后了,系统报错,无法启动eAccelerator。需配置内容如下:
zend_extension=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so”
eaccelerator.shm_size=”32″
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=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
eaccelerator.allowed_admin_path=”/home/wwwroot/control.php”
在这里,最后的这个php页面是eAccelerator的管理监控页面,位于我们解压缩的包里,将此文件拷贝到自己的网页根目录下,即可使用http://网页地址/control.php进行监控操作,其默认用户名密码为:admin/eAccelerator
clip_image006
最后,重启Nginx,至此eAccelerator的安装与配置即告完成。