web-dev-qa-db-ja.com

memcachedの状態を監視/調整するための便利なヒント/ツールは何ですか?

昨日、memcachedライブの統計をうまく出力するこのクールなスクリプト ' memcache-top 'を見つけました。のように見えます、

memcache-top v0.6       (default port: 11211, color: on, refresh: 3 seconds)

INSTANCE                USAGE   HIT %   CONN    TIME    EVICT/s READ/s  WRITE/s
127.0.0.1:11211         88.8%   94.8%   20      0.8ms   9.0     311.3K  162.8K

AVERAGE:                88.8%   94.8%   20      0.8ms   9.0     311.3K  162.8K

TOTAL:          1.8GB/  2.0GB           20      0.8ms   9.0     311.3K  162.8K
(ctrl-c to quit.)

何かに注意を払う必要があるときに、特定のテキストが赤くなります。

Q.大まかに言って、memcachedが適切に設定されていることを確認するために使用した便利なツール/テクニックは何ですか?

12
David Lam

Memcachedサーバーインスタンスにアクセスするための適切なインターフェイスは phpMemCacheAdmin です。

telnetを使用してコマンドラインからアクセスすることをお勧めします。

Telnetを使用してMemcachedに接続するには、コマンドラインから次のtelnet localhost 11211コマンドを使用します。

Telnetセッションを終了したい場合は、いつでもquitと入力して、returnキーを押してください。

接続後にstatsコマンドを実行すると、Memcachedサーバーの重要な統計の概要を取得できます。

メモリは内部でチャンクに割り当てられ、常に再利用されます。メモリはさまざまなサイズのスラブに分割されるため、サーバーが選択したスラブにアイテムが完全に収まらない場合は、メモリを浪費します。

そのため、Memcachedは、データのサイズに基づいて、メモリのさまざまな「スラブ」(これらをパーティションと考えてください)にデータを自動的に割り当てます。これにより、メモリの割り当てがより最適になります。

接続しているインスタンスのスラブを一覧表示するには、stats slabコマンドを使用します。

より便利なコマンドはstats itemsです。これは、各スラブ内に格納されているアイテムの数を含むスラブのリストを提供します。

スラブを一覧表示する方法がわかったので、stats cachedump [slab ID] [number of items, 0 for all items]コマンドを使用して、各スラブ内を参照し、そこに含まれるアイテムを一覧表示できます。

そのアイテムの実際の値を取得する場合は、get [key]コマンドを使用できます。

キャッシュからアイテムを削除するには、delete [key]コマンドを使用できます。

19
Jack

本番システムの場合、 Monit のようなものを使用して、Memcacheのアクティブな監視(ダウンタイムアラート、自動再起動など)を実際に設定する必要があります。設定例を次に示します。 Monitを使用したMemcacheの監視

3
alphadevx