Top/Devel/PHP/Accelerator/eAccelerator

eAccelerator の変更点はてなブックマーク


#ref(eaccelerator.png,around,right,nolink,nothumb);
一度呼び出されたコンパイル済みのPHPスクリプトをキャッシュして実行速度を上げるソフトウェア。~
いわゆるアクセラレーター。~
[[Turck MMCache for PHP>Devel/PHP/Accelerator/MMCache]] の派生((MMCacheが開発停止のため実質的には後継))ソフトウェア。

-[[オフィシャル>http://sourceforge.net/projects/eaccelerator/]]
-[[オフィシャル>http://eaccelerator.net/]]

*インストール
コンパイル
 tar xvjf eaccelerator-0.9.5-beta1.tar.bz2
 cd eaccelerator-0.9.5-beta1/
 /usr/bin/phpize
 ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
 make
 make install
すると次のように表示されるので、右のパスを覚えておく。
 Installing shared extensions:     /usr/lib/php4/20020429/

WEBインターフェース用のパスワードを生成((eaccelerator_password.php をサーバに上げてブラウザでアクセスしてもOK))
 php -q eaccelerator_password.php

PHPにzend_extensionとして設定(付属のeaccelerator.iniを参考に)
 vi /usr/local/lib/php.ini
>
 [eaccelerator]
 zend_extension="/usr/lib/php4/20020429/eaccelerator.so"
 eaccelerator.shm_size = "16"
 eaccelerator.cache_dir = "/var/cache/eaccelerator"
 eaccelerator.enable = "1"
 eaccelerator.optimizer = "1"
 eaccelerator.debug = 0
 eaccelerator.log_file = "/var/log/apache2/eaccelerator.log"
 eaccelerator.name_space = ""
 eaccelerator.check_mtime = "1"
 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_and_disk"
 eaccelerator.sessions = "shm_and_disk"
 eaccelerator.content  = "shm_and_disk"
zend_extensionの行は先に覚えていたパスを使ったものに読み替えて下さい。~
上で生成したパスワードも追加
 eaccelerator.admin.name="yourusername"
 eaccelerator.admin.password="$1$lBPC8I.y$hWT1DHuX/7Eokw/rUil2y/"


キャッシュディレクトリ作成 (www-dataはApacheの実行ユーザー)
 mkdir /var/cache/eaccelerator
 chown www-data.www-data /var/cache/eaccelerator

Apacheの再起動
 /etc/init.d/apache2 restart

*動作の様子
付属のeaccelerator.phpにブラウザでアクセスしてみると、キャッシュのヒット状況などが分かります。

*性能
cubic9.com は 2004/12/16 に PHP4.3.10+eAccelerator0.9.0 にしてみました。~
今のところ [[MMCache>Devel/PHP/Accelerator/MMCache]] とあまり変わらない模様。~
特に不具合は起きていませんが、%%オフィシャルではPHP5での不具合が報告されています。%%
0.9.1で修正された模様。

*Amazon
#amazon(479733245X,left)
#amazon(4798119865,left)
差分 一覧