本文介绍了登录WebSphere MQ的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有消息通过WebSphere MQ队列传入.我们需要很长时间才能收到此消息.

We have messages coming in over a WebSphere MQ queue. It takes a long time before we receive the message.

是否有一种简单易行的跟踪消息接收/接收时间的方法?

Is there a simple, easy way of tracking when a message gets received/picked up?

推荐答案

消息放置后,您可以请求交货确认.消耗完该消息后,会将报告消息传递到原始消息中设置的Reply-To Queue和Reply-To QMgr.如果您使用C语言或Java过程接口或任何语言的WMQ v7.0,这相对容易.报告选项的设置与PUT之前的其他任何消息选项一样. http://publib .boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzak.doc/fr13320_.htm

When the message is put, you can request Confirmation on Delivery. When the message is consumed, a report message is delivered to the Reply-To Queue and Reply-To QMgr that were set in the original message. This is relatively easy if you are using the C or Java procedural interfaces or WMQ v7.0 with any language. The report options are set like any other message option prior to the PUT. http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzak.doc/fr13320_.htm

对于JMS和WMQ v7.0,MQMD属性都作为JMS消息属性公开,您可以通过这种方式设置或读取它们. http://publib .boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzaw.doc/jm25500_.htm

In the case of JMS and WMQ v7.0 the MQMD properties have all been exposed as JMS Message Properties and you can set or read them that way. http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzaw.doc/jm25500_.htm

您可以考虑使用另一种不太简单但更详细的方法. MA0W SupportPac( http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg24010343&loc=en_US&cs=utf-8&lang=en )是跟踪出口.此跟踪具有非常好的控制,您可以为单个PID,特定队列或通道等启用它.它将为您提供API计时,因此您可以查看在两次API调用之间还是在API中花费的时间自称.换句话说,程序是在两次API调用之间等待10秒,还是GET需要10秒才能完成?如果由于填充事务日志而使消息回滚,然后重新读取,则可能会导致延迟,除非有跟踪记录,否则该延迟是非常透明的.

There is another, less simple but MUCH more detailed, approach you may consider. The MA0W SupportPac ( http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg24010343&loc=en_US&cs=utf-8&lang=en ) is a trace exit. This trace has extremely fine control and you can enable it for a single PID, for specific queues or channels, etc. It will give you API timings so you will be able to see whether the time is being spent between API calls or in the API call itself. In other words, did the program wait 10 seconds between API calls or did the GET take 10 seconds to complete? If you are getting messages rolled back due to filling the transaction log and then re-read this can cause delays that are pretty transparent unless you have a trace.

这篇关于登录WebSphere MQ的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 12:27