上次尝试安装Wikipedia的镜像的时候,了解到了eAccelerator已经是很常用的PHP平台预编译加速的手段了。今天在自己机器上尝试安装了一下,备忘如下:
获得源代码:
wget http://internap.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.4.tar.bz2
tar jxf eaccelerator-0.9.4.tar.bz2
编译:需要有autoconf支持
/usr/local/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/bin/php-config
make
sudo make install
配置增加如下:sudo vi php.ini
extension="eaccelerator.so"
eaccelerator.shm_size="16"
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"
创建专用的缓存目录:
sudo mkdir /tmp/eaccelerator
sudo chmod 0777 /tmp/eaccelerator
重启一下apache:
sudo /home/apache/bin/apachectl restart
通过phpinfo()已经可以看到:eAccelerator启用了
This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
with eAccelerator v0.9.4, Copyright (c) 2004-2004 eAccelerator, by eAccelerator
用phpinfo这个脚本本身还做了一下性能对比测试:对于纯php代码(不考虑数据/文件IO等操作)的运行效率的确有3-5倍的效率提升;