com.ibm.mq.MQQueue#put(MQMessage,MQPutMessageOptions)
と呼ぶと、ハングすることがあります。このメソッドのタイムアウトを設定するにはどうすればよいですか? 同じ質問がありますIBM MQの設定タイムアウト
答えて
SHARECNVが1以上のSVRCONNチャネルを使用しているMQ v7.0以降では、Java用のIBM MQクラスまたはJMS用のIBM MQクラスがPUTでエラーを返す時間を短縮できます。 SVRCONNのHBINTをより低い値に設定することによってネットワークの問題の結果。タイムアウトは、以下の式を用いてHBINTに基づいている:
- HBINTである場合に60未満:HBINT * 2
- HBINTは60以上である場合:HBINT + 60
SVRCONNチャンネルのデフォルトHBINTは300秒ですので、6分のタイムアウトになります。私はこの値を15などのより低い値に設定したいのですが、30秒のタイムアウトがあります。
Java用のIBM MQクラスとJMS用のIBM MQクラスは、接続の詳細がプログラムまたはJNDIによって指定されている場合、キューマネージャのSVRCONNチャネルでHBINTセットを採用します。
チャネルテーブルJava/JMS を指す場合、チャネルテーブルのCLNTCONN HBINTを使用すると、最後のHBINTはCLNTCONNとSVRCONNの間で最も高い値になります。たとえば、CLNTCONNチャネルが15に設定され、SVRCONNがデフォルトの300に設定されている場合、最終的なHBINTは300になります。
MQGMO_WAITオプションとWaitIntervalがあり、Get呼び出しが一定の時間待機するように設定できます。たとえば、次のスニペットではGet呼び出しを3秒間待機します。
MQGetMessageOptions gmo = new MQGetMessageOptions();
gmo.Options = MQConstants.MQGMO_WAIT;
gmo.WaitInterval = 3000;
mqQueue.Get(mqMessage, gmo);
プットコールのタイムアウトを設定するオプションはありません。何か問題があれば、Putコールはエラーを返します。
UPDATE:プットコールが呼び出されると
、キュー・マネージャへの接続がすでに確立されています。接続に問題がある場合、PutコールはTCPスタックがそのような問題を通知するとすぐに戻ります。このようなTCPレベルの問題は、システム上で実行されているすべてのアプリケーションに影響するため、チューニングはアプリケーションレベルではなく、システムレベルで行う必要があります。また、socket.write呼び出しのタイムアウトを設定することもできないと思います。
MQは、キューマネージャへの接続を確立するためのタイムアウトを設定する方法を提供します。 mqclient.iniにconnection_timeoutパラメータがあり、タイムアウトを設定できます。
- 1. IBM MQのリスナー
- 2. IBM MQ Java - トランザクション
- 3. IBM MQとスプリングブート
- 4. IBM MQマルチインスタンスキュー
- 5. Spring JMS Publish/Susbcriberの設定をIBM Webpshere MQ
- 6. IBM MQの深さ
- 7. IBM MQの64ビットサポート
- 8. Camel JMS - JMSPriorityをIBM MQメッセージに設定できません
- 9. IBM MQ V6.0はJMSXDeliveryCountプロパティを設定していますか?
- 10. C#IBM MQ WEBSPHERE MQRC_NOT_AUTHORIZED
- 11. MuleSoft + IBM MQ接続
- 12. IBM MQ Server 8.0.0.4クライアントライブラリ
- 13. IBM-MQの.NET XMS ...とMono?
- 14. IBM MQメッセージの履歴
- 15. IBM MQとAzureの統合
- 16. IBM WebSphere MQのvmsクライアント
- 17. IBM MQキューの深さ
- 18. CreateTopicのIBM MQ XMSエラー2085
- 19. IBM WAS7.xからIBM MQ 8
- 20. MQ接続タイムアウトc#
- 21. IBM WebSphere MQ作成スクリプト
- 22. .Net AMQPクライアント(IBM MQ用)
- 23. IBM WebSphere MQ JMS Jarファイル
- 24. Spring統合IBM MQ JMSクライアント
- 25. 不満リンク例外IBM-MQ
- 26. IBM MQ Messageプロパティには、MDB
- 27. メッセージ再配信ibm mq
- 28. IBM MQ 7ファイル転送
- 29. IBM MQの設定方法GET JavaのMaximumSizeを先読みする
- 30. JMeterのIBM MQ 8 => Javaの例外
Putは少なくともTCPタイムアウトに対してハングアップする可能性がありますか?そして、TCPタイムアウトを短くする方法はありませんか? –
私の更新を見てください。 – Shashi