私は akka クラスターのドキュメントを読んでいて、今はゴシップセクションにいます。次の文がわかりませんでした。
クラスターのメンバーシップは、ゴシップ プロトコルを使用して伝達されます。このプロトコルでは、クラスターの現在の状態がクラスター全体でランダムにゴシップされ、最新バージョンを確認していないメンバーが優先されます。
想像するのはかなり難しいです。次の質問があります。
質問: 最新の変更がまだゴシップされている場合、ノードはどのメンバーが最新の変更を見ていないかをどのように知るのですか?
つまり、ノードが通知を受信した場合、それをどこに送信するかをどのように決定するのでしょうか? 明らかに、送信者は最新の変更を確認しているため、それを返送すべきではありません。しかし、他のメンバーはどうですか?それらの一部はすでに状態を確認している可能性があり、これらすべてのメンバーを照会する以外に状態を把握する方法はありません。しかし、あるノードにクエリを実行すると、クエリ中に「いいえ、まだ見ていません」と応答し、誰かがそのノードに状態を送信する可能性があります...