web-dev-qa-db-ja.com

cassandra仮想メモリの使用量をどのように削減しますか?

cassandraそれでメモリ使用量を減らすための設定はありますか?私はcassandraがメモリを適切に管理することを理解していますが、テスト目的で6Gbメモリを使いたくないcassandraサービスがWindows mchineで実行されている場合のみ。

[〜#〜]更新[〜#〜]

disk_access_mode: standartではなくdisk_access_mode: autoの設定に疲れました。それは助けにはならなかった。また、cassandra 2.0.9 cassandra.yamlファイルにはデフォルトでdisk_access_modeが含まれていないことに注意してください。したがって、disk_access_modeがcassandraから削除されました。

19
Cherry

@catpawsが指摘するように、キーは Tuning Java resources およびcassandra-env.sh(私のMacでは/ usr/local /にあります)のドキュメントにありますetc/cassandra/cassandra-env.sh)しかし、彼女は質問に答えるには不十分です。

だから私がやったことと起こったことはここにあります:私は自分のアクティビティモニターを見て、Java(cassandra)のメモリ使用量が〜4GBであることに気付きました。次に、ドキュメントを読んで、〜4GBが式を使用して割り当てられたヒープとほぼ同じ

max(min(1/2 ram, 1024MB), min(1/4 ram, 8GB)

次に、cassandra-env.shを編集して、「これらをオーバーライドして、量を設定します...」と表示し、

MAX_HEAP_SIZE="2GB"

元の4 GBを形成します。私も設定しました

HEAP_NEWSIZE = "400M"

しかし、それはメモリ使用量を減らすために必要ではありません。

私はcassandraを再起動し、アクティビティモニターを確認しました。メモリ使用量Java(cassandra)は現在、わずか2GBでした。

23
Gyuri

Conf/cassandra-env.shファイルは、Cassandraの環境設定を制御します。ファイルとドキュメントのコメントを参照してください: http://www.datastax.com/documentation/cassandra/2.1/cassandra/operations/ops_tune_jvm_c.html

2
catpaws

試行錯誤の末、disk_access_mode: mmap_index_onlyは最良の結果を提供します。 Linux OOMキラーレーダーに近づかないようにするのにも役立ちます