![]() Memo/PHP/PHP Acceleratorhttps://dexlab.net:443/pukiwiki/index.php?Memo/PHP/PHP%20Accelerator |
PHPアクセラレータ "ionCube PHP Accelerator" †PHPアクセラレータ“ionCube PHP Accelerator”を使用してみる。(無料) なお、暗号化は有償のionCube PHP Encoder(58,000円)を用いるらしい。 他のアクセラレータソフトはTurck MMCache for PHPがある。(PHP5非対応、無償)こちらは暗号化も行えるらしい。倒産?後継ソフトeAcceleratorが出た模様。(PHP5対応、無償、Ver.0.9.2) 特徴 †PHP Acceleratorでは以下の作業をキャッシュし高速化するよう。
よってrequire/includeを頻繁に使っているコードは高速化できるかも。 インストール †適当なディレクトリに展開する。 # wget http://www.asial.co.jp/products/ioncube/accelerator/bin/php_accelerator-1.3.3r2_php-4.3.0_linux_i686-glibc2.1.tgz # tar xvfz php_accelerator-1.3.3r2_php-4.3.0_linux_i686-glibc2.1.tar.gz # cd php_accelerator-1.3.3r2_php-4.3.0_linux_i686-glibc2.1.3 # cp php_accelerator_1.3.3r2.so /usr/local/lib # chmod 755 /usr/local/lib/php_accelerator_1.3.3r2.so # cp phpa_cache_admin /usr/local/bin # chmod 700 /usr/local/bin/phpa_cache_admin php.iniの最後に追加 # vi /etc/php.ini ;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; PHP Accelerator Settings ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;; zend_extension = /usr/local/lib/php_accelerator_1.3.3r2.so phpa.shm_user = apache phpa.shm_group = apache ; Local Variables: ; tab-width: 4 ; End: httpdの再起動 # service httpd restart 動作確認 †コマンドラインから。 # phpa_cache_admin -mv 成功: shm size 8.0MB bytes mempool size 8.0MB mempool bytes allocated 64.6KB mempool max bytes allocated 1.8MB mempool bytes free 7.9MB mempool overhead 8.2KB cache enabled 失敗: No shm cache available with key 0x0c0deb00. The cache may not exist or you may have insufficient permissions to access it. webから。 <? phpinfo(); ?> ブラウザでアクセスし、以下の記述があるか確認する。 Zend Technologies with the ionCube PHP Accelerator v1.3.3r2, Copyright (c) 2001-2002, by Nick Lindridge バグ †Fedora Core 1 でエラー †phpinfo();では正常動作しているようにみえるが、「phpa_cache_admin -mv」ではエラーとなるので、正常動作していない。 共有メモリが確保できない †アシアル社のサイトやPHPAに付属するドキュメントには、PHPAが使用する共有メモリの所有ユーザ/グループを指定するphpa.shm_userや phpa.shm_group の設定は、PHPAバージョン1.3.2r2以降では明示的に設定することは不要とある。
しかし、明示的にphp.iniファイルにおいて指定しないと、共有メモリ上に正しくメモリを確保できない現象が発生した。 Smartyとの併用で出力ファイルが化ける †希に不明なファイルをincludeしてしまい、出力htmlがめちゃくちゃになるらしい。 # phpa_cache_admin -D |
|