ionCube php acceleratorを使ってみる。

ionCube PHP Accelerator (以下PHPA)はその名の通り、御社のPHPプログラムを格段に高速化させるソフトウェアです。PHP Zend Engineに簡単にインストールすることができ、スクリプトの変更やコンテンツの欠損、他のソフトへの弊害等もなく御使用いただけます。

PHPAは無料で提供されており、同様の非商用製品の中でも最高の性能を発揮しているのみならず、商用で提供されている類似商品とも十分互角の性能を有しております。PHPAを利用すると、一般的には5倍の速度向上が得られ、Smartyベースのアプリケーション上では10倍近くもの速度向上が得られると確認されております。米国Yahoo!本社もPHPAが理想的なPHPスクリプトキャッシングソリューションであると認識し、採用して下さいました。また、世界のトップアーティストであるマドンナの公式サイトmadonna.comでもPHPAが採用されています。

だそうで。

とりあえずインストール。

今のTPA22pに入ってるPHPはVersion 4.3.11なんでとりあえず4.3用のPHPA1.3.3r2をインストール。

TarBallを解凍するとフォルダができてその中にPHP用のSharedObjectが入ってるので/usr/lib/php4あたりにコピー。

php.iniに以下を追記

zend_extension="/usr/lib/php4/php_accelerator_1.3.3r2.so"
phpa.shm_user=apache
phpa.shm_group=apache
phpa.shm_size = 32
phpa.cache_dir="/var/cache/phpa"

んでhttpdを再起動

ロードできない件

ふんがー。

Failed loading /usr/lib/php4/php_accelerator_1.3.3r2.so:
  /usr/lib/php4/php_accelerator_1.3.3r2.so:
  cannot enable executable stack as shared object requires:
  Permission denied

Permission denied?
とりあえず関連しそうなフォルダにapache:apacheへのフルアクセスを与えてみる。

#chown apache:apache /tmp/cache/phpa
#chmod 770 /tmp/cache/phpa
#chmod a+rx /usr/lib/php4

んで再起動。

ウゴカナスwwwwwwwwうぇ

とりあえずエラーメッセージでGoogle先生にお尋ね。

→ 該当無し

ヽ(゜Д゜)ノ ウンコー

「Shared object executable stack shared object requires: Permission denied」でgoogle先生にお尋ね。

あった

Check if selinux is enabled. That might be a problem.

(;´Д`) またSELinuxかい。

ということで解除してhttpd再起動

[Tue Jul 12 17:56:54 2005] [notice-phpa] Acquiring cache : uid 48 gid 48 perms 666 (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] PHPA 1.3.3r2 on linux_i686_glibc2.1.3 (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] Initialised 32MB cache at 0xb5f2e000 with 512 process entries (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] Lock thresholds 10/10 (pid 10421)
[Tue Jul 12 17:56:57 2005] [notice] caught SIGTERM, shutting down
[Tue Jul 12 17:56:54 2005] [notice-phpa] Acquiring cache : uid 48 gid 48 perms 666 (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] PHPA 1.3.3r2 on linux_i686_glibc2.1.3 (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] Initialised 32MB cache at 0xb5f2e000 with 512 process entries (pid 10421)
[Tue Jul 12 17:56:54 2005] [notice-phpa] Lock thresholds 10/10 (pid 10421)
[Tue Jul 12 17:56:57 2005] [notice-phpa] Cache shared memory removed (pid 10421)
[Tue Jul 12 17:56:57 2005] [notice-phpa] Cache semaphores removed (pid 10421)

(httpd/error_log)

でおk。

結果

P2が体感できるぐらい早くなったっつーことはかなり有効ってことやね。
こりゃいいや。