高速化で有名なphp-apcを使ってみる。

スポンサーリンク

PHP-APCを使ってみる。

こんばんはファガイです。
本日はPHP-APCを使ってみた。

PHP-APCとは

PHP-APCとはAPC(Alternative PHP Cache)と呼ばれ、PHPの中間コードをメモリにキャッシュし、次回アクセス時に高速化ををするモジュールです。
以前から知っていましたが、高速化をする機会がなく、必要ないと思っていたのですが、一旦ローカル上でやってみようかなと思い、やってみた。

環境

一応環境。
CentOS 6
Apache 2.2.15
PHP 5.4.13

PHP-APCの導入

php-apcの導入はyumから行います。

yum install php-pecl-apc

これでおk。

しかしながら、私の環境ではこんなエラーが。

Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * elrepo: ftp.osuosl.org
 * epel: ftp.iij.ad.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-pecl-apc.i686 0:3.1.9-2.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-apc-3.1.9-2.el6.i686
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-apc-3.1.9-2.el6.i686
--> Finished Dependency Resolution
Error: Package: php-pecl-apc-3.1.9-2.el6.i686 (base)
           Requires: php(api) = 20090626
           Installed: php-common-5.4.13-1.el6.remi.i686 (@remi)
               php(api) = 20100412-x86-32
           Available: php-common-5.3.3-22.el6.i686 (base)
               php(api) = 20090626
Error: Package: php-pecl-apc-3.1.9-2.el6.i686 (base)
           Requires: php(zend-abi) = 20090626
           Installed: php-common-5.4.13-1.el6.remi.i686 (@remi)
               php(zend-abi) = 20100525-x86-32
           Available: php-common-5.3.3-22.el6.i686 (base)
               php(zend-abi) = 20090626
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

エラー・・・だと・・・?

見てみる限り、baseのapcをインストールしようとしたけど、php-commonはremiリポジトリから取得していたためダメっぽい。
なので、php-pecl-apcをremi経由でインストール。

yum install php-pecl-apc --enablerepo=remi

これで行けたので良かったです。

あとはこれを反映するために、

service httpd restart

とりあえず、再起動。gracefulでも良いかも。(確認はしていない)

apc-adminを追加する

php-apcにはWebの管理スクリプトが付属されているため、それも導入。

先に置く場所を追加。

mkdir /var/www/html/apc

スクリプトをコピー。

cp /usr/share/doc/php-pecl-apc-*/apc.php /var/www/html/apc

confファイルを作る。

vi /var/www/html/apc/apc.conf.php
<?php
    defaults('ADMIN_USERNAME', 'root');
    defaults('ADMIN_PASSWORD', 'password');
?>

これでOK。
必要な人はhttpdのconfもいじったほうがいいです。

以上ー。

コメント

タイトルとURLをコピーしました