xcacheを使う
昨日のエントリではeacceleratorをphp5.2.14で使おうとして結局有効にできませんでした。
で、代わりというか別のプロダクトもあるようなのでそれを使ってみることにしました。どうやらxcacheってのが最近は流行りらしいですよ。
ダウンロード
xcacheのブツはここにあります。最新は2.0.0。5.2.14あたりでもちゃんと使えました。
展開してmake
いつものように展開してmake,make install。autoconfが必要で、Solarisには入ってなかったりします。必要に応じてそのあたりインストール。昨日のエントリにそのあたり書いてあります。
$ /usr/local/bin/tar -zxvf /tmp/xcache-2.0.0.tar.gz $ cd xcache-2.0.0 $ phpize $ ./configure --enable-xcache --enable-xcache-optimizer $ /usr/local/bin/make # /usr/local/bin/make install
php.iniに設定を追加
ソースコードディレクトリにあるxcache.iniを環境のphp.iniへ追加します。
$ su - root $ cd xcache-source-directory $ cat xcache.ini >> /usr/lib/php.ini
php.iniをちょっと調整。
zent_extensionは実際にsoファイルがインストールされた場所を指定します。xxxとなっているところを実際のディレクトリ名にしたりちょと綴りが違っているのを修正したり。
UNIX環境だとzend_extension_tsはコメントアウト。それとついでにxcache.optimizerをonに。
adminも入れてみる
ソースコード中にadminというディレクトリがあるので、それをウェブサイト上の見えるところへ適当にコピー。認証はphp.iniの
xcache.admin.user xcache.admin.pass
を設定。パスワードはmd5()でハッシュされた値をいれるので以下の様にして求める。
$ php -r 'print md5("hogehoge");' c46df1d12ec0cd5a3a327b4f4cf07f74-
一番うしろのハイフンはいらない。
有効になってるかな
phpを単体で起動させてみて、
$ /usr/local/bin/php -v PHP 5.2.14 (cli) (built: Feb 14 2011 11:04:36) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies with XCache v2.0.0, Copyright (c) 2005-2012, by mOo
ああ、いいみたいですね。
php -r 'phpinfo();' で参照すると、
XCache Support => enabled Version => 2.0.0 Modules Built => cacher optimizer Readonly Protection => N/A Cache Init Time => 1970-01-01 09:00:00 Cache Instance Id => 0 Opcode Cache => disabled Variable Cache => disabled
とOpcode Cacheがdisableになっている。でもadmin画面では有効だっていっているし、実際キャッシュもしているようなので気にしない。
で効果は?
うーん、実はウェブが遅くてこれやってみたんですが、遅い原因は別にあったんですねぇ。なので、よくわからない、、のが正直なところ。すみません。
あ、暇があったら外してみた状態で試験してみよう。