2016-11-10 6 views
0

プロセスの非ハローキャストワークロードがGCオーバーヘッドエラーを引き起こした状況で、Hazelcastセットアップ(Payara内に埋め込まれたHazelcast)で複数の停止が発生しました。実際のリクエストへの応答が停止したときにメンバーが死んだと宣告します

この間、Hazelcastはハートビートに応答しましたが、データを取得した実際の要求には応答しませんでした。これにより、たとえデータのバックアップが利用可能であっても、システムがストールしました。

したがって、単にハートビート以外の他の種類の要求に応答しなくなった場合、クラスタからメンバーを蹴り出す方法があるかどうかを尋ねたいと思います。

+1

これはもっとペナラの質問です。おそらくあなたが言及した理由のために、Hazelcastクライアント(組み込みメンバーではなく一般的に推奨される展開戦略)を開始し、別個のHazelcastクラスタを使用することが可能かもしれません。バックアップは、 "read-from-backup"が有効になっていて、メンバーがローカルバックアップを持っている場合のみ読み取られ、バックアップを持つ他のメンバーに尋ねることはありません。 – noctarius

+0

はい、スタンドアロンクラスターは私が追求する方向です.DevoxxのHazelcastブースの人たちは、機能としてそのような振る舞いを持つことは良い考えであるかどうかをここで尋ねるように勧めました。 – pdudits

答えて

1

Payaraサーバーインスタンスで「ライト」モードでハローキャストを使用することを検討してください。 ecessive GCに直面する可能性のあるインスタンスで「ライト」モードをオンにすると、これらのインスタンスはヘイズキャストクラスタのデータを保存しないため、Hazelcastのパフォーマンスに影響を与えてはなりません。

ただし、データを保持する追加の完全インスタンスでこのソリューションを補完する必要があります。これらの追加のインスタンスは、あなたのアプリケーションを実行してはならず、独立したヘイズキャストノードとしてのみ機能します。私のブログ記事のFocused on throughput and performanceセクションでは、ライトガールのメンバーである「Lite」Payaraクラスタメンバーの使用方法のいくつかのシナリオについて説明しています。

要約すると、いくつかのノードを「Lite」に変換し、すべての「Lite」ノードに対して、それ自体でのみ実行される追加の「フル」ノードを追加すると、展開されたアプリケーションはなくなります。アプリケーションとヘビキャストを別々のJVMに統合します。ヘイルキャストクラスタのデータを含まない "Lite"ノードであるJVMのGCは、Hazelcastのパフォーマンスに影響しません。

関連する問題