this answerによれば、単一のアドレスであっても、 "tcp"転送で "フェイルオーバー"プロトコルを使用することによるメリットがあります。これに加えてActiveMQの "vm:"トランスポートで "failover:"プロトコルを使用することに利点はありますか?
、ActiveMQ documentation、以下に(強調鉱山)を適用する:
JMSブローカーがダウンした場合、ActiveMQのが自動的にフェールオーバーを使用して、使用可能なJMSブローカーに再接続することができる:プロトコル。これは自動的に再接続するだけでなく、は一時的な宛先、セッション、プロデューサ、そして最も重要なのはコンシューマも再開します。
これは "vm"トランスポートを使用する場合にも当てはまりますか?
キューの消費者がメッセージを受け取るのをやめている間にキューがいっぱいになっている間に頻繁に問題が発生していますが、これについての修正はまだ見つかりませんでした。これはActiveMQ v5.6.0にあります。現時点ではv5.14.5にアップグレードしていますが、追加のオプションも検討したいと考えています。
ActiveMQConnectionFactoryのための当社の現在のSpring構成は次のようになります。vm://localhost
からfailover:(vm://localhost)
にURLを変更
<bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"
depends-on="amqEmbeddedBroker">
<property name="brokerURL" value="vm://localhost" />
<property name="watchTopicAdvisories" value="false" />
</bean>
でしょうすなわち、何らかの理由で閉鎖されている接続に対して安全-守って、この場合のいずれかの利益を提供? failover:
の部分を含むようにURLを変更すると、FailoverTransport
というインスタンスが作成されていることがわかりますが、vm
の場合はどのようなメリットもありますか?