0

CentOS の新しい MurMur3Partitioner で Cassandra 1.2 を使用しています。

2 ノード クラスタでは、両方ともnum_tokens=256

CQL3 で数百万行を挿入した後、1 つのノードが他のノードよりも多くのメモリを使用していることがわかります。

コマンドを実行するfreeと、2 番目のノードで 6GB、シード ノードで 1GB の使用量が表示されます。

ただし、実行時は

ps -e -o pid,vsz,comm= | sort -n -k 2

これは、各ノードで約 6.8GB を使用する Java プロセスを示しています。

MAX_HEAP_SIZE="4GB" HEAP_NEWSIZE="400M" があることに注意してください

cassandra-env.shノードごとに設定します。

誰でも洞察を提供できますか?

4

1 に答える 1

1

これは、特に Java プロセスに関連するため、Linux での正確なメモリ使用率のレポートに関する一般的な問題に関連している可能性が最も高いです。Java プロセスはメモリを自動的に予約して割り当てるため、オペレーティング システムから見た情報は誤解を招く可能性があります。Java プロセスが何をしているかを理解する最善の方法は、JMX を使用してヒープ使用率を監視することです。これには、VisualVM や jconsole などのツールが適しています。

于 2013-01-29T14:34:40.973 に答える