memcacheのメモ(というか、Cache::Memcached::Fastのメモ)

http://search.cpan.org/~kroki/Cache-Memcached-Fast-0.17/lib/Cache/Memcached/Fast.pm
set, cas, add, replace, append, prependについて

set

$memd->set($key, $value);

$keyに対して$valueをサーバに保存。$keyはスカラ値。$valueはPerlのデータタイプで定義されているべき。
参照されたときに、Perlのreferenceデータ構造は、"serialize_methods"を用いる特定のルーチンで透過的にシリアライズされる。

cas

$memd->cas($key, $cas, $value);

この$keyに紐付くCAS(Consistent Access Storage)値が$casと等しい場合に、$keyに対して$valueをサーバに保存。
$casは、"gets"や"gets_multi"で返却されるオブジェクトです

add

$memd->add($key, $value);

$keyがサーバに無い場合に限り、$keyに対して$valueを保存する

replace

$memd->replace($key, $value);

$keyがサーバにあるときに限り、$keyに対して$valueを保存する
(無いときはどうなるんだろう?追加)※要確認

append

$memd->append($key, $value);

$keyに対応する現在のvalueに$valueを追加する
$keyも$valueは、サーバ上の現在のvalueと同様、スカラ値でなければならない。appendはexpirationには影響しない

prepend

$memd->prepend($key, $value);

$keyに対応する現在のvalueの前に$valueを追加する
$keyも$valueは、サーバ上の現在のvalueと同様、スカラ値でなければならない。prependはexpirationには影響しない