5

現在、jgroups の構成に問題があり、何千ものメッセージが NAKACK.xmit_table にスタックしてしまいます。実際には、それらのすべてが xmit_table に格納されているようで、数時間後の別のダンプは、それらがいずれも去るつもりがないことを示しています...

これはプロトコル スタック構成です

UDP(bind_addr=xxx.xxx.xxx.114;
bind_interface=bond0;
ip_mcast=true;ip_ttl=64;
loopback=false;
mcast_addr=228.1.2.80;mcast_port=45589;
mcast_recv_buf_size=80000;
mcast_send_buf_size=150000;
ucast_recv_buf_size=80000;
ucast_send_buf_size=150000):
PING(num_initial_members=3;timeout=2000):
MERGE2(max_interval=20000;min_interval=10000):
FD_SOCK:
FD(max_tries=5;shun=true;timeout=10000):
VERIFY_SUSPECT(timeout=1500):
pbcast.NAKACK(discard_delivered_msgs=true;gc_lag=50;retransmit_timeout=600,1200,2400,4800;use_mcast_xmit=true):
pbcast.STABLE(desired_avg_gossip=20000;max_bytes=400000;stability_delay=1000):UNICAST(timeout=600,1200,2400):
FRAG(frag_size=8192):pbcast.GMS(join_timeout=5000;print_local_addr=true;shun=true):
pbcast.STATE_TRANSFER

起動メッセージ...

2010-03-01 23:40:05,358 INFO  [org.jboss.cache.TreeCache] viewAccepted(): [xxx.xxx.xxx.35:51723|17] [xxx.xxx.xxx.35:51723, xxx.xxx.xxx.36:53088, xxx.xxx.xxx.115:32781, xxx.xxx.xxx.114:32934]
2010-03-01 23:40:05,363 INFO  [org.jboss.cache.TreeCache] TreeCache local address is 10.35.191.114:32934
2010-03-01 23:40:05,393 INFO  [org.jboss.cache.TreeCache] received the state (size=32768 bytes)
2010-03-01 23:40:05,509 INFO  [org.jboss.cache.TreeCache] state was retrieved successfully (in 146 milliseconds)

... は、これまでのところすべてが順調であることを示しています。

warn-level に設定されたログは、時折の例外を除いて、何かが間違っていることを示していません。

2010-03-03 09:59:01,354 ERROR [org.jgroups.blocks.NotificationBus] exception=java.lang.IllegalArgumentException: java.lang.NullPointerException

メモリメモリの問題なしで以前に見られたので、これは無関係だと思います。

マシンの 1 つから 2 つのメモリ ダンプを調べて奇妙な点を見つけましたが、これまでのところ何も見つかりませんでした。おそらく異なるプロトコルからのいくつかの統計を除いて

UDP は

num_bytes_sent 53617832
num_bytes_received 679220174
num_messages_sent 99524
num_messages_received 99522

NAKACKは...

num_bytes_sent 0
num_bytes_received 0
num_messages_sent 0
num_messages_received 0

...そして巨大なxmit_table。

各マシンには 2 つの JChannel インスタンスがあり、1 つは ehcache 用、もう 1 つは TreeCache 用です。構成の誤りは、両方が同じ診断 mcast アドレスを共有していることを意味しますが、診断メッセージを正しく送信したい場合を除き、これは問題になりません。ただし、もちろん、メッセージの mcast アドレスは異なります。

説明を求めてください。たくさんの情報を持っていますが、現時点で何が関連しているかについては少し確信が持てません。

4

1 に答える 1

4

クラスタ内のノードの 1 つがマルチキャスト メッセージをまったく受信していないことが判明しました。これにより、すべてのノードが独自の xmit_tables にハングアップしました。これは、「孤立した」ノードからメッセージを受信したことを示す安定性メッセージを受信しなかったためです。

AS を再起動し、マルチキャスト アドレスを変更すると、問題が解決しました。

于 2010-03-10T12:15:25.577 に答える