QA@IT

memcached の中のデータを一覧する方法はありますか?

3178 PV

memcached はそういう用途の物では無いかもしれませんが、Ruby の Hash のように一覧して見たいときがたまにあります。現在、dalli というライブラリを使って memacached にアクセスしていますが、一覧表示できるような API は見当たりませんでした。

回答

memcachedの代替としてRedisを検討されることをおすすめします。

RedisにはKEYSというコマンドがあって、これがまさにお望みのものになります。前方一致で"SomeClass:*"のような検索も可能なので、ある特定のprefixをもつキーだけに一括処理したいときなどに便利です。ただしO(N)の操作なのでキーの数が増えすぎないことが運用上の前提になります。

個人的にRedisを使うようになってからmemcachedを全くといっていいほど使わなくなりました。LRUでstale keysをパージしてくれる、という機能(まさしくキャッシュですね)が必要な場面だけでmemcachedを使う感じで、他は全てRedisを使うようになりました。

編集 履歴 (0)

以下のコマンドでどうでしょう

memcached-tool host:port dump

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。