Web PIのPHPにmemcacheモジュール追加
Windows上のmoodleでmemcachedを使ってみようとしてちょいとはまりました。moodle等OSSで複数のDBに対応させている場合、どうしてもSQL文でのチューニングは行いにくい事もあり、大規模な運用でなくとも効果が期待できるかなと。
Microsoft Web Platform Installerでのphp_memcache.dll
IISでPHPを追加するのにもっとも楽なのはMicrosoft Web Platform Installer(Web PI)を使う事です。
これでインストールした場合、PHPからmemcachedを利用するためのライブラリは付属していませんので、別途用意する必要があります。
基本、apache(xampp)も同じように設定しますが、phpのバージョンで利用するphp_memcache.dllが異なるので注意が必要です。
php_memcache.dllのダウンロード
現時点(2010/5)でWeb PI付属のPHPのバージョンは5.2.13なのでこれにあったphp_memcache.dllが必要です。このバージョンがPHP5.2用ではないと動作しません。いろいろ試しましたがこのバージョンだといけるようです。
http://downloads.php.net/pierre/
このサイトから以下のものをダウンロードします。
php_memcache-5.2-nts-Win32-vc6-x86-20090408.zip (2009-04-08 23:29 -0700)
php_memcache.dllの配置
このzipに含まれるphp_memchache.dllをphpのextフォルダにコピーします。x64環境の場合は下記フォルダのはずです。
C:\Program Files (x86)\PHP\ext
php.iniへの設定
次にphp.iniに設定を追加します。x64環境の場合は下記ファイルのはずです。
C:\Program Files (x86)\PHP\php.ini
extensionの説明が670行くらいにあるのでそこに「extension=php_memcache.dll」の1行を追加しました。
; Windows Extensions ; Note that ODBC support is built in, so no dll is needed for it. ; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) ; extension folders as well as the separate PECL DLL download (PHP 5). ; Be sure to appropriately set the extension_dir directive. extension=php_memcache.dll