web-dev-qa-db-ja.com

memcachedに安全に割り当てることができるメモリの量はどれくらいですか?

サーバーでmemcachedを使用することを検討しています。アップグレードしたばかりで、かなり強力なボックスができました。

Dell PowerEdge R710 Linux
RHEL 5 - 64bit
12GB RAM

(以前は32ビット4GBボックスを使用していました)。

問題は、Linuxが実際にメモリをどのように使用するか、そしてこれが私のmuninグラフにどのように変換されるかについて混乱していることです。

したがって、グラフから判断すると(または、コンソールで使用できる便利なコマンドはありますか?)、memcachedに安全に割り当てることができるRAMの量。つまり、どのくらいのRAMがありますか?

編集:グラフ画像ホスティングの有効期限が切れたため、画像ホスティングサイトによる広告を削除しました。

1
Jon M

ええと、あなたは事実上常に8G以上を無料(黄色、「未使用」)またはキャッシュ(紺色)として持っています。私の意見では、memcachedに割り当てる上限はおそらく6GB(ギブまたはテイク)です。これにより、スワッピングの実際のリスクなしに、他のプロセスと一部のディスクキャッシュにかなりのヘッドルームを確保できます。さらに割り当てることができると主張することもできます。それは好みの問題であり、実際のパフォーマンス上の利点は特定のアプリケーションによって異なります。

Memcachedに最大6GBのメモリを使用するように指示した場合、6Gを格納しない限り、それほど多くは使用されないことに注意してください。制限が6GBであっても、1GBしか保存しない場合は1GBしか消費しません。モニタリングにmemcachedを追加し、memcachedのbytes統計を監視し、それに応じてメモリ使用量を制限して、ユーザーの突然の急増があった場合にシステムが予期しないことを行わないようにすることをお勧めします。

シェルからfreeを使用してメモリ使用量を判断すると、次のようになります。

             total       used       free     shared    buffers     cached
Mem:       4060096    3775976     284120          0     270828    1899720
-/+ buffers/cache:    1605428    2454668
Swap:       577528          0     577528

空きは未使用のメモリ、キャッシュはディスクキャッシュです。空きメモリは時間の経過とともにディスクキャッシュとして使用されるため、現在有用な目的で使用されている場合でも、キャッシュとして使用されているメモリを空きメモリと見なすのは非常に安全です。

4
af.