有没有在使用“故障恢复:”任何好处:在ActiveMQ的传输协议与“虚拟机”?(Are there

2019-10-30 04:10发布

根据这个答案 ,也有从使用“故障转移”协议与“TCP”运输,即使只有一个地址的好处。

除此之外,该ActiveMQ的文档 ,适用于下列(重点煤矿):

如果JMS代理下降,ActiveMQ的可以使用故障自动重新连接到可用的JMS代理:协议。 这不仅会自动重新连接,它恢复任何临时目的地,会话,生产者和最重要的消费者

使用“虚拟机”运输时,这是否也适用?

我们看到频繁的问题与队列消费者停止回暖的消息,而队列满了,我们还没有找到这个修复呢。 这是和ActiveMQ V5.6.0 - 我们升级到v5.14.5的那一刻,而是希望探索更多的选择,太多。

我们对当前ActiveMQConnectionFactory Spring配置如下:

<bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"
    depends-on="amqEmbeddedBroker">
    <property name="brokerURL" value="vm://localhost" />
    <property name="watchTopicAdvisories" value="false" />
</bean>

将改变从URL vm://localhostfailover:(vm://localhost)提供在这种情况下,任何利益,即安全,防范连接被关闭不管出于什么原因? 当改变URL以包括failover:一部分,我可以看到的一个实例FailoverTransport被创建,但它提供的的情况下,任何利益vm运输?

Answer 1:

故障切换会尝试,如果连接失败,以获得重新连接。 所以,如果你这样做通常会连接失败的崩溃,你不会看到一个异常的操作,但它会悄悄地尝试重新连接。 所以,如果你的内存中介耗尽,客户端会沉默,它尝试重新连接可能发出一些日志。

VM连接不会失败,因为网络问题,所以你可能需要进一步调查。 但是,升级似乎是第一步。



文章来源: Are there any benefits in using the “failover:” protocol with the “vm:” transport in ActiveMQ?