memcachedの有効期限の小ネタ
久しぶりの投稿。
memcachedでテストしてみたので結果だけ。
memcachedの有効期限についてだが、2,592,000(30日分)以上設定できないというのを知識的に知っていたが、試してみた。
ちなみにWindows版にて・・・
versionは1.2.4。最新見てみると1.4.5だって、そんなに進んでんの・・・。
で、telnet上で
set test1 0 0 5
test1
STOREDset test2 0 2592000 5
test2
STOREDset test3 0 2592001 5
test3
STORED
と3件データを投入してみた。
test3はエラーにならないのね。。。
それでもって、それぞれgetしてみると。。。
get test1
VALUE test1 0 5get test2
VALUE test2 0 5get test3
END
おおお、エラーにはならなかったtest3だが、格納されていない。
なるほどぉ。
こういう動きをするのか。。。
ちなみに、日付を30日進めて、getしたところ、
get test1
VALUE test1 0 5get test2
ENDget test3
END
となった、有効期限は効いているみたい。
test2がなくなったからね。
でもって、expire = 0で設定した場合、30日で消えるとかいうことはなさそう。
90日まで進めてみたけどちゃんと残っていた。
LRUであふれて消えるまで残っているみたいです。
なかなか、有意義なテストだった・・・
って、もしかして常識ですか・・・