久々に書きました...
ナチュラリーセレクトをリリースしてからしばらく忙しくて、ブログが書けずでしたが、
以前から気になっていた、サイトのレスポンス速度の改善をと思い、分散型キャッシュサーバーとして
memcacheを導入しました...

今日はその構築手順を....
【CentOSにmemcachedをインストール】
①. libeventのインストール
yum -y install libevent
yum -y install libevent-devel
② memcachedのインストール
yumでインストール
yum -y install memcached
こんだけでok
【memcached起動手順】
① memcachedはroot権限での実行はできません。root以外のユーザにsuしてから起動します。
memcached -d -m 64 -p 11211
【memcachedサーバーに接続】
① telnet クライアントを使用して起動したサーバーに接続
telnet localhost 11211
【memcachedサーバーの操作】
① set : キャッシュに追加する
set userId 0 0 5
12345
STORED ※STORED⇒memcachedサーバーからの応答
② add : 該当するキーがキャッシュにない場合のみ追加する
add companyId 0 0 3
564
STORED
※STORED⇒memcachedサーバーからの応答
③ replace : 該当するキーがキャッシュにある場合のみ置き換える
set accountId 0 0 5
67890
STORED
replace accountId 0 0 5
55555
STORED
※STORED⇒memcachedサーバーからの応答
コマンドその他 get, delete, gets, cas, stats, flush_all
④ ちなみに終了は quit
⑤ ちなみにmemcachedに格納されているキー,値の確認は
# memcached-tool localhost:11211 dump
Dumping memcache contents Number of buckets: 1 Number of items : 3
Dumping bucket 1 - 3
total items
add accountId 0 1403360970 5 99999
add userId 0 1403360970 5 12345
add conpanyId 0 1403360970 3 546
【PHPからmemcachedを使えるようにする】
① memcacheライブラリのインストール
yum -y install php-pecl-memcache
② httpd再起動
service httpd restart か service httpd graceful
③ インストールされているか確認
php -I | grep memcache
【PHPからmemcachedを使えるようにする】
① 下記ソース参考
<?php
$memcache = new Memcache();
$memcache = connect('localhost', 11211) or die('connect failed.');
$memcache->set('key', 'test');
$get = $memcache->get('key');
echo $get;$memcache->close();
?>
② これでターミナルに'test'と表示されればok
ちなみにmemcacheの構成と仕組みについては
■変更前

■導入後

みたいな感じになりました。
導入後と導入前のレスポンス比較したかったけど、またの機会にします。
ナチュラリーセレクトもよろしくお願いします!