私はmemcacheサーバの鍵の数を数えたいので、libmemcachedに付属していると思われるmemdump
ユーティリティを使いました。それが言うコマンドの説明ではmemdumpでキーをダンプすると、「1スラブクラスごとの1ページ」の制限は何を意味しますか?
:
からフェッチするように言われているすべてのサーバーから「鍵」のリストをダンプmemdump。 memcachedはすべてのキーを提供する必要はないので、完全な "ダンプ"を取得することはできません。別のウェブサイト上でまた
(Memcached Cheat Sheet)Iが読み込ま:
[...] memcacheのプロトコルは、スラブによって編成されたデータに覗くためのコマンドを提供する(所定の大きさの範囲のデータの分類) 。いくつかの重要な制限ががあります
あなたが唯一のスラブクラスごとにキーをダンプすることができます(ほぼ同じ内容の大きさの鍵)
は、あなただけのスラブクラスごとに1ページ(データの1メガバイト)をダンプすることができます
これはいつでも削除できる非公式な機能です。
[...]
のでYou can only dump one page per slab class (1MB of data)
は実際に何を意味するのでしょうか? 1メガバイトのデータは何ですか?スラブに1 MB以上のデータ(キーを含む)が含まれている場合、残りのデータは取得されず、いくつかのキーが欠落する可能性があります。
例として、3つのキーAには500KBのデータがあり、Bには600KBのデータがあり、Cには300KBのデータがあり、それらはすべて同じスラブに移動します。キーをダンプするときに、AとBのみを(その後も遮断されるかもしれない!)データをダンプする
ああ、基本的に1 MBの鍵を得ることができますか? – Max
@Max memcachedソースコードからわかるように、 'cachedump'コマンドのレスポンスバッファサイズには2MBの制限があります。だから、はい、あなたは1MBの鍵を得ることができます。 –