Q
檢查MQ隊列深度
3
A
回答
0
我看到一個響應access queue with Websphere MQ API
你看的MBean accessibles在JMX方面?如果我必須這樣做,我會在Mbean中公開它。
你可以看到有IBM JMS Topologies
監測和檢查資源,如隊列深度的狀態下,有幾個選項。首選的方法是使用Application Serve提供的JMX Mbeans進行監視:JMSBasicFunction,JMSAdministration和EmbeddedJMSAdministration。 您可以通過wsadmin或編程方式訪問這些Mbeans。其次,您可以使用傳統的WMQ管理實用程序(例如runmqsc或MQExplorer)查看隊列和其他資源。如果確實使用這些實用程序,則不必對Application Server隊列管理器和隊列進行任何配置更改。這些資源受應用程序服務器的控制。在更改使用MQ實用程序導致非功能配置
不要這些資源,並知道如果你是一個WAS的服務器上,如果這仍然是相同的MBean,但你應該在你的AS找到等價的MBean。
2
請參閱http://blog.guymahieu.com/2008/06/11/getting-the-depth-of-an-mqseries-queue-from-java/。
我重新實現了這個如下:
import com.ibm.mq.*;
public class QueueManager {
private final String host;
private final int port;
private final String channel;
private final String manager;
private final MQQueueManager qmgr;
public QueueManager(String host, int port, String channel, String manager) throws MQException {
this.host = host;
this.port = port;
this.channel = channel;
this.manager = manager;
this.qmgr = createQueueManager();
}
public int depthOf(String queueName) throws MQException {
MQQueue queue = qmgr.accessQueue(queueName, MQC.MQOO_INQUIRE | MQC.MQOO_INPUT_AS_Q_DEF, null, null, null);
return queue.getCurrentDepth();
}
@SuppressWarnings("unchecked")
private MQQueueManager createQueueManager() throws MQException {
MQEnvironment.channel = channel;
MQEnvironment.port = port;
MQEnvironment.hostname = host;
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES);
return new MQQueueManager(manager);
}
}
把下面的罐子在classpath:
- com.ibm.mq *罐子
- 的j2ee.jar
相關問題
- 1. EJB的MQ - 得到隊列深度
- 2. Websphere使用XMS.Net的MQ隊列深度
- 3. 使用hermesJMS或WebSphere MQ的shell腳本檢索隊列深度
- 4. TCP發送隊列深度
- 5. 使用隊列深度優先搜索
- 6. 從java代碼獲取隊列深度
- 7. 確定窗口消息隊列深度
- 8. Websphere 7 SIB隊列:如何訪問隊列深度wsadmin命令?
- 9. 隊列滿,深度阻塞隊列,需要澄清
- 10. MQ隊列的Spring listener concurrentConsumers
- 11. IBM MQ多實例隊列
- 12. MQ - 峯值隊列在.NET
- 13. RabbitMQ:檢查隊列存在
- 14. MQ和SIB隊列中消息的最大長度
- 15. 兔子MQ:提高隊列沖洗速度
- 16. 如何檢查恢復的深度
- 17. 腳本文件從隊列管理器檢索MQ消息
- 18. WebSphere MQ回退隊列中的消息輸入隊列
- 19. MQ中隊列管理器和隊列之間的區別
- 20. 深度列表
- 21. javax.jms.JMSSecurityException:MQJMS2008:無法打開MQ隊列
- 22. Websphere MQ遠程隊列性能跟蹤
- 23. IBM MQ隊列 - 配置特定的JVM
- 24. IBM MQ傳輸隊列獨佔鎖定
- 25. 如何獲取禁止WebSphere MQ隊列?
- 26. Rabbit MQ Web UI隊列錯誤
- 27. WebSphere MQ和MMX:無法用隊列
- 28. Websphere中的重命名隊列MQ
- 29. 孤兒SYSTEM.MANAGED.DURABLE。*隊列中的Websphere MQ
- 30. WebSphere MQ創建遠程隊列
放置在路徑中的特定jar不受支持並且是特定於版本的。在V8之前,如果您希望爲您的客戶提供支持,IBM需要完整的客戶端安裝。從v8.0開始,IBM有一個僅支持jar的客戶端配置,但這不是適合它的jar的正確列表。 – 2015-02-24 04:53:55
這有幫助,我只需要將運輸模式更改爲綁定。 – 2015-09-07 13:44:48