2017-04-18 18 views
0

最近、私たちはactivemqに関するいくつかの問題に直面しています。プロデューサはブローカに接続できますが、メッセージを送信するとプロデューサスレッドがブロックされます。クライアント/プロデューサは、タイムアウトも例外もスローしません。フェールオーバーの設定に何らかのパラメータを追加できるかどうかを知りたいのですがフェールオーバー:(tcp:// localhost:61616、tcp://srv01.abc.com:61616)、プライマリのクライアントタイムアウトメッセージは、フェイルオーバーmqブローカーにリダイレクトできます。この点に関して誰かが私を助けることができれば素晴らしいだろう。だから、フェールオーバーの輸送のためのアクティブなmqのプロデューサをブロック

答えて

0

maxReconnectAttempts:デフォルト値= -1 | 0

From ActiveMQ 5.6:デフォルトは -1です。永遠に再試行してください。 0は、再接続を無効にすることを意味します。たとえば、一度だけ接続しようとします。 ActiveMQ 5.6より前:デフォルトは0です。永遠に再試行してください。すべて ActiveMQのバージョン:値> 0は、クライアントにエラーが返されるまでの再接続の最大回数を示します( )。

ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("failover:(tcp://localhost:61616,tcp://srv01.abc.com:61616)?randomize=false&maxReconnectAttempts=Value&trackMessages=true") 

すべてのフェイルオーバートランスポートオプションは、迅速な答えHassenのURLに

http://activemq.apache.org/failover-transport-reference.html

+0

感謝を設定することができます。 maxReconnectDelayも設定する必要があるかどうかを知りたいですか?また、maxReconnectAttempts属性は、再接続の試行がプライマリで枯渇した場合に、その要求をフェールオーバーノードにリダイレクトしますか? – user2006623

+0

maxReconnectAttemptsはすべてのフェイルオーバーURLの最大値ですが、FailoverTransportは自動的にURLに接続しようとします.1つのURLに正常に接続できない場合は、次のURLを試みます。このプロセス全体は、maxReconnectAttemptsの「試行」1に等しくなります。 –

+0

FailoverTransportは、ノードの試行が失敗した場合、フェールオーバーノードへの要求のリダイレクトを常に処理します。 –

関連する問題