【wordpress】自宅サーバのwordpressの速度が遅い その3-APCをいれてみる

スポンサーリンク

自宅サーバ関連の前の記事はこちら
自宅サーバのwordpressの速度が遅い
自宅サーバのwordpressの速度が遅い その2

自宅サーバの環境はCentOS 5.6 + PHP5.3.3(CentOS 5.6上でyumでphp53パッケージをインストールしたもの)です。
APCとはAlternative PHP Cacheの略で、PHPの中間コードのキャッシュや最適化を行う拡張モジュールです。検索すると「APCを入れたらwordpressが早くなった!」っとあったので期待しながらインストール。
結果を先に書くと早くならなかったですorz CPUがatom330のせいか…?

とりあえず、インストールの過程をメモしておきます。

#pecl install APC
(中略)
/tmp/pear/temp/APC/apc.c:393: error: expected specifier-qualifier-list before 'pcre'
/tmp/pear/temp/APC/apc.c: In function 'apc_regex_compile_array':
/tmp/pear/temp/APC/apc.c:454: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:454: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:455: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c:455: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c: In function 'apc_regex_match_array':
/tmp/pear/temp/APC/apc.c:487: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:487: error: 'apc_regex' has no member named 'preg'
/tmp/pear/temp/APC/apc.c:488: error: 'apc_regex' has no member named 'nreg'
/tmp/pear/temp/APC/apc.c:488: error: 'apc_regex' has no member named 'nreg'
make: *** [apc.lo] エラー 1
ERROR: `make' failed

エラーが出て進まないので、google先生で検索するとyumでpcre-develというパッケージを入れればよいらしい。PCRE=Perl Compatible Regular Expressions。Perl互換の正規表現を処理するライブラリみたいです。

#yum install pcre-devel
(中略)
============================================================================================
 Package               Arch              Version                   Repository          Size
============================================================================================
Installing:
 pcre-devel            i386              6.6-6.el5_6.1             updates            181 k
 pcre-devel            x86_64            6.6-6.el5_6.1             updates            184 k
Installing for dependencies:
 pcre                  i386              6.6-6.el5_6.1             updates            117 k

Transaction Summary
============================================================================================
Install       3 Package(s)
Upgrade       0 Package(s)

Total download size: 483 k
Is this ok [y/N]: y
(中略)

#pecl install APC

これでインストールできました。APCを利用するには/etc/php.dにapc.iniというファイルを作成し、中に「extension=apc.so」と記入してapacheをgracefulするようです。

# touch /etc/php.d/apc.ini
# vi /etc/php.d/php.ini
---- 以下の内容を記入して保存
extension=apc.so
----
# apachectl graceful

apcが実際に動いているかを確認するにはphp -i|grep apcで確認。

# php -i|grep apc
Additional .ini files parsed => /etc/php.d/apc.ini,
apc
apc.cache_by_default => On => On
apc.canonicalize => On => On
apc.coredump_unmap => Off => Off
apc.enable_cli => Off => Off
apc.enabled => On => On
(以下略)

たぶんapc.enabledがOnになっていれば動作していると思います。

これでwordpressが早くなっているかと思ってapache bench(ab)しましたが、変化ないですorz
自宅サーバのCPUがatom330だから、そこがボトルネックになっているんだろうか…

—-追記
WP Super Cache 0.9.9.9のキャッシュを利用している状態でAPCを有効にすると、wordpressの画面が真っ白になりました^^;他のキャッシュ系のプラグインなどとは相性がわるいのかも。APCを無効にすると治ったので、他のキャッシュ系のものと一緒に使う場合は気をつけたほうがいいかもです。

—-参考にしたブログ
peclでAPCをインストールicoro : CentOSにPHPアクセラレータのAPCを入れてみた
APCインストール時のエラー対処 APCのインストールで詰まった:三浦仮想研究所