LNMP(Linux+Nginx+MySQL+PHP)環境にmemcachedモジュールを追加
1.依存関係ライブラリ(libevent)をインストール
[root@localhost tong]# tar xvf libevent-1.4.13-stable.tar.gz
[root@localhost tong]# cd libevent-1.4.13-stable
[root@localhost libevent-1.4.13-stable]# ./configure –prefix=/usr/local/test/libevent
[root@localhost libevent-1.4.13-stable]# make
[root@localhost libevent-1.4.13-stable]# make install
[root@localhost libevent-1.4.13-stable]# echo $?
0
[root@localhost libevent-1.4.13-stable]#
2.memcachedサーバー側をインストール
[root@localhost libevent-1.4.13-stable]# cd ..
[root@localhost tong]# tar xvf memcached-1.4.20.tar.tar
[root@localhost tong]# cd memcached-1.4.20
[root@localhost memcached-1.4.20]# ./configure –prefix=/usr/local/test/memcached –with-libevent=/usr/local/test/libevent/
[root@localhost memcached-1.4.20]# make
[root@localhost memcached-1.4.20]# make install
[root@localhost memcached-1.4.20]# echo $?
0
[root@localhost memcached-1.4.20]#
3.memcacheクライアントをインストール
[root@localhost memcached-1.4.20]# cd ..
[root@localhost tong]# tar xvf memcache-3.0.6.tgz
[root@localhost memcache-3.0.6]# ./configure –enable-memcache –with-php-config=/usr/local/test/php/bin/php-config –with-zlib-dir
[root@localhost memcache-3.0.6]# make
[root@localhost memcache-3.0.6]# make install
Installing shared extensions:
/usr/local/test/php/lib/php/extensions/debug-non-zts-20090626/
[root@localhost memcache-3.0.6]# echo $?
0
[root@localhost memcache-3.0.6]# vim /usr/local/test/php/lib/php.ini //php.iniに以下の2行を追加する
extension_dir = “/usr/local/test/php/lib/php/extensions/debug-non-zts-20090626/"
extension=memcache.so
4.memcached サービスが起動
memcached -d -m 10 -u root -l 202.207.177.177 -p 11211 -c 256 -P /tmp/memcached.pid
パラメータ説明:
-d デーモンを起動,-m Memcacheを使用するために割り当てられるメモリの量,
-u Memcacheを実行しているユーザー,-lサーバーのIPアドレスをリスニング,
-p Memcacheのリスニングポートを設定,-c 実行中の最大同時接続数,ディフォルト1024
-P Memcacheのpidファイルを設定,保存場所: /tmp/memcached.pid
5.サービスが起動するかどうかを確認する
[root@localhost memcache-3.0.6]# netstat -anp |grep mem
tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN 9565/memcached
tcp 0 0 :::11211 :::* LISTEN 9565/memcached
udp 0 0 0.0.0.0:11211 0.0.0.0:* 9565/memcached
udp 0 0 :::11211 :::*
6.テスト
[root@localhost memcache-3.0.6]# cd /usr/local/test/nginx/html/
[root@localhost html]# vim test.php
<?php
$mem = new Memcache;
$mem->connect(“202.207.177.177", 11211);
$mem->set('key’, 'これはarkgame.comのテストです!’, 0, 60);
$val = $mem->get('key’);
echo $val;
?>