jgroupsでクラスタへのコネクタを作りました。私のコネクタのインスタンスは正しく動作し、同じマシンで実行されている場合は他のメッセージを受け取りますが、2 つの異なるマシンで実行されている場合は他のメッセージをキャッチしません。私の JGroups コネクタ クラス:
public class JGroupsMulticastConnector implements Sender, Listener {
JChannel basicChannel = null;
String clusterName = "";
public JGroupsMulticastConnector( String clusterName) {
this.clusterName = clusterName;
try {
basicChannel = new JChannel();
} catch (Exception e) {
MyLogger.error(e, name);
}
}
public void init() {
try {
basicChannel.connect(clusterName);
basicChannel.setReceiver(new ReceiverAdapter(){
@Override
public void receive(org.jgroups.Message msg) {
System.out.println(name+":"+"Got a Message");
super.receive(msg);
}
});
} catch (Exception e) {
MyLogger.error(e, name);
}
}
public void shutdown() {
basicChannel.disconnect();
}
@Override
public void send(Message msg) {
basicChannel.send(msg);
}
}