2013年3月5日火曜日

今更memcachedを触ってみた

0. 環境
CentOS 5.9(final) 64bit
memcached 1.4.15

1. インストール
yum -y install libevent libevent-devel

wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
tar xvf memcached-1.4.15.tar.gz
cd 72_20130301_memcached/
./configure
make
make test
make install

which memcached
デフォルトでは/usr/local/bin/memcachedにインストールされる

2. memcached実行
memcached -u root -d
プロセスを停止するときはkillする
telnet localhost 11211
telnet状態になってから以下のコマンドを実施していく

3. memcachedコマンド実行
・状態を確認する
stats

・キーに値をセットする
set test1 0 0 5
abcde
STORED
と表示されれば「abcde」という値の格納が完了

・キーから値を取得する
get test1
VALUE test1 0 5
abcde
END
格納した値を取得

・キーの値を更新する
replace test1 0 0 6
abcdef
STORED
で「abcdef」に値が変更

・キーの値に対して後ろに値を追加する
append test1 0 0 5
12345
STORED
get test1
VALUE test1 0 11
abcdef12345
と表示されるように後ろに12345が追加

・cas IDを使ってキーの値を更新する
cas test1 0 0 6 6
zzzzzz
STORED
ここでのcasによる値変更は反映されるが
cas test1 0 0 6 6
aaaaaa
EXISTS
古いcas IDに対する変更は反映されない
gets test1
VALUE test1 0 6 7
zzzzzz
実際に値を取得してみるとわかる
cas IDを指定しての値変更は最新のcas IDを指定しない限りキーの値が変更されないことがわかる

・キー情報を全て削除する
flush_all

あとはAPIがありJDKもいろいろと用意されているようなので試してみてください

参考サイト:
http://memcached.org/
http://code.google.com/p/memcached/wiki/Clients
http://l-w-i.net/t/memcached/command_001.txt

0 件のコメント:

コメントを投稿