FreeBSD:PHPを高速化
提供:KinusatiWiki
目次 |
PHPを高速化
www.kinusati.netではWordpress/mediawiki/cactiとPHPアプリケーションをメインに利用しているが、会社の同僚から「あんまり早くないね」と指摘があった。一応4coreのPhenomマシンでメモリは4GBだから一般的に考えて遅いわけではないが、もっさりしているといわれれば、もっさりしている。
PHPが遅いんだろうと思い、PHPの高速化に取り組んだ。
方法1) APC(Alternative PHP Cache)導入
導入方法
PHPの高速化といえば、これ!早速導入した
# portinstall pecl-APC
この後にApacheを再起動するだけでOK!
# apachectl stop # apachectl start
楽ちん。再起動後確かにアクセスがさくさくになった。ただデフォルトのメモリ割り当て30MB設定では不足している模様。 wordpress/mediawiki間を移動すると体感速度が遅くなることがあった。 そこでメモリを64MBを割り当てることで恒常的に速度が速くなった。簡単ですがチューニングは必要ですね。
設定変更箇所は以下の通りです。php.iniで設定。
# vi /usr/local/etc/php.ini apc.shm_size="64" => デフォルトは"30"なので"64"に増やす
運用管理
いったいどの程度キャッシュを使っているのかを確認したいが、付属のapc.phpという管理UIを利用すれば目視可能です。
# cp /usr/local/share/doc/APC/apc.php <Document>/
ここではApacheの設定変更は除きますね。まぁ管理系なのでUIに対してのIPアドレスでのアクセス制限やベーシック認証、SSL化等は検討しておいた方がいいと思います。
初期IDとパスワードとapc.phpに設定します。
# vi apc.php
defaults('ADMIN_USERNAME','hogehoge'); // Admin Username
defaults('ADMIN_PASSWORD','hogehuga'); // Admin Password - CHANGE THIS TO ENABLE!!!
上記の例ではID : hogehoge, PASS : hogehugaに設定しています
でブラウザからapc.phpにアクセス。以下のようなページが出ます。
64MB中50MB程度利用しているのがわかりますね。フラグメントもないのでいったんこれで様子見としましょう。
あとキャッシュのフラッシュもGUIからできる模様。
