memcachedの初歩的お勉強

実際に今度使いそうなので、ちょっと調べたスーパー自分memo。実際運用する場合は、直接telnetなんかせずに、言語からアクセスすると思うので、ここに書いてるのは実用上の役には立ちません。

ref:

install

libeventが必要。後はaptかyumかsourceで適当に。

memcachedプロトコル

ref:

telnet localhost 11211

した後に入力するメソッドメモ。他にもいっぱいある。

状態確認
stats
keyを指定してデータを取得

get

get key
# VALUE key flags bytes
# DATA
keyを指定してデータを削除

timeを指定すると、削除後その時間が経つまで、addとreplaceで同じkeyを設定できなくする。

delete key time
keyを指定してデータを設定

add,replace,set。

add key flags exptime bytes
DATA
  • flags

16bit unsigned integer

  • exptime

データの期限。指定した時間がたつとメモリから削除される。

  • bytes

設定するデータのbyte数。データ中の改行は含めるが、最後のデリミタの改行(\r\n)は含めない。設定したbyte数以上のデータをsetしようとするとエラーになる。

  • set,add,replaceの違い

"set" means "store this data".
"add" means "store this data, but only if the server *doesn't* already hold data for this key".
"replace" means "store this data, but only if the server *does* already hold data for this key".

memcached関連のツール

次のファイルがinstallされる。

memerror
memflush
memcp
memcat
memstat
memslap
memrm