如何在activeMq tcp故障转移的情况下处理连接失败

时间:2017-04-25 09:44:35

标签: java activemq

我正在使用activeMQ tcp故障转移连接并创建使用者并订阅生产者生成的主题。 现在我该如何管理网络故障?如果代理和客户端之间的连接断开,我怎么知道何时再次建立连接? 另外,我如何知道生产者是否正常运行?如果生产者重新开始;我怎么知道它,以便我可以重新订阅这些主题?

1 个答案:

答案 0 :(得分:3)

使用FailoverTransport您无需管理重新连接,除非您指定maxReconnectAttempts

,否则他将尝试重新连接 如果生产者重启,

重新订阅主题?不需要,因为你的消费者是连接的,他不需要关心生产者

即使不需要,也可以通知FailoverTransport状态更改:

    ActiveMQConnectionFactory cf = new ActiveMQConnectionFactory("failover:(tcp://host1:5670)");
    cf.setTransportListener(new TransportListener() {
        @Override
        public void transportResumed() {
        }

        @Override
        public void transportInterupted() {
        }

        @Override
        public void onException(IOException error) {
        }

        @Override
        public void onCommand(Object command) {
        }
    });
相关问题