为php添加eaccelerator代码缓冲加速器

php每次都是加载文件进行分析解释执行,这当中浪费了很多资源,于是就有人想到,可不可以在php加载了文件后将分析后的op代码缓冲起来,以此来加快php代码的装载执行速度,这样就有了eaccelerator这样的产品诞生了。
http://www.eaccelerator.net/ 最新版本 0.9.5.3

首先通过

  1. wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2

获取最新的 0.9.5.3 源码包

然后对源码包进行编译安装

  1. tar -xjvf eaccelerator-0.9.5.3.tar.bz2
  2. cd eaccelerator-0.9.5.3/
  3. /usr/local/php526/bin/phpize
  4. ./configure –with-php-config=/usr/local/php526/bin/php-config
  5. make
  6. make install
  7. cd ../

对eaccelerator做配置
编辑 /usr/local/php526/conf/php.ini 添加后面的一些

  1. zend_extension="/usr/local/php526/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so"
  2. eaccelerator.shm_size="16"
  3. eaccelerator.cache_dir="/var/cache/eaccelerator"
  4. eaccelerator.enable="1"
  5. eaccelerator.optimizer="1"
  6. eaccelerator.check_mtime="1"
  7. eaccelerator.debug="0"
  8. eaccelerator.filter=""
  9. eaccelerator.shm_max="0"
  10. eaccelerator.shm_ttl="0"
  11. eaccelerator.shm_prune_period="0"
  12. eaccelerator.shm_only="0"
  13. eaccelerator.compress="1"
  14. eaccelerator.compress_level="9"

对 extenstion 设置部分部分有如下一些要点:
1.如果使用Zend的线程安全方式则使用: zend_extension_ts
2.如果只是作为普通的php扩展则使用: extension
3.如果和Zend Optimizer一起使用,则必须在Zend Optimizer前加载,在php.ini中配置放在Zend Optimizer前面。

创建临时文件夹

  1. mkdir -p /var/cache/eaccelerator
  2. chmod 0777 /var/cache/eaccelerator

验证eaccelerator安装
1. 通过 /usr/local/php526/bin/php -v 查看有如下信息

PHP 5.2.6 (cli) (built: Jul 11 2008 00:02:23)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
    with eAccelerator v0.9.5.3, Copyright (c) 2004-2006 eAccelerator, by eAccelerator

2. 重新启动 phpfastcgi 进程,在网站下面做一个 php 页面包含

  1. <?php
  2.    echo phpinfo();
  3. ?>

其中在 php credits 前面可以看到 有 eaccelerator 加载的标志。

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
    with eAccelerator v0.9.5.3, Copyright (c) 2004-2006 eAccelerator, by eAccelerator

Popularity: 4% [?]

Related

Comments

One Response to “为php添加eaccelerator代码缓冲加速器”

  1. Iron on July 13th, 2008 2:06 pm

    听上去很强悍哈!

    [Reply]