eAccelerator是一個PHP加速器,也就是可以加快php程式碼的執性速度,最近有空測試了一下。將數具與大家分享。



硬體:

  • CPU: Transmeta TM5600 533MHz
  • Memory: 128M

軟體:

  • OS CentOS 4.1
  • Apache 2.0.52
  • php 4.3.9
  • Zend Encoder 3.5.0
  • eAccelerator 0.9.5 beta1
  • ZendOptimizer 3.0.0 beta2
  • PHP程式來自於phpNuke

eAccelerator安裝:依照README file做即可

> cd eaccelerator-0.9.5-beta1
> export PHP_PREFIX="/usr"
> $PHP_PREFIX/bin/phpize
> ./configure
--enable-eaccelerator=shared
--with-php-config=$PHP_PREFIX/bin/php-config

> make
> make install
> cp eaccelerator.ini /etc/php.d/ #可能需稍作修改
> mkdir /tmp/eaccelerator
> chmod 0777 /tmp/eaccelerator

測試結果 :

利用 ab -n 100 -c 10 http://192.168.10.1/index.php 測試

eAccelerator Zend Optimizer encoded
by
Zendencod
Test 1
(sec)
Test 2
(sec)
Test 3
(sec)
平均
45.154 42.777 42.525 43.485 [1]
v 26.959 25.178 25.702 25.946 [2]
v 47.875 45.518 45.397 46.263 [3]
v v 29.205 26.664 27.972 27.947 [4]
v v 43.481 43.422 48.337 45.08
v v v 44.503 40.431 42.117 42.350

整體而言,未encoded的檔案,在eAccelerator約可增加 40%效率(([1] -[2]) / [1] or ([3] -[4]) / [3]),encoded過的檔案,與安裝Optimizer的效率並沒有顯著改善。也許是zend encoder太舊的關係,我並不確定。

ps:我的測試數據僅供參考。