2012-02-08 5 views
0

どのように各オブジェクトがmemcachedで使用されるメモリ量を決定できますか? "stats item"コマンドは最も近いと思われますが、使用法は含まれていません。私はRubyでそれをやってみることを考えています - サンプルオブジェクトを取得し、そのサイズを測定するためにいくつかのメモリ測定を使用します。しかし、どれくらい正確であるかは分かりません。オブジェクトごとのMemcachedストレージ

答えて

1

オブジェクトのサイズは、キー長+データ長+データ構造+文字列化された "フラグ"フィールド+ 2バイトです。私はメモリからこれを思い出しているので、プラスまたはマイナス2バイトです:P

レールはそれを置く前に、シリアル化された(マーシャル/ json'ed/etc)値であるあなたのための "データ長" memcached。もしあなたがそのキーを知っていれば、手で一度それを取り出して長さを戻すことができます。

"make"を実行した後、memcachedのtarballから "./sizes"コマンドを実行すると、データ構造のサイズがわかります。

システム内の合計バイト数は、「stats」コマンドの結果として「curr_bytes」ですが、キャッシュに残っているフラッシュされたアイテムや期限切れのアイテムは考慮されません。

関連する問題