当前位置: 首页 > 知识库问答 >
问题:

在WAS中监视JMS队列

魏学智
2023-03-14

一点背景:我需要改进我们的一个批处理框架的性能。在那里,批处理输入被发送到JMS队列。此外,在队列endpoint,我们有一个MDB,它正在使用消息。现在,我在这里怀疑的是,如果有大量的消息,就没有MDB实例可以使用这些消息,因为所有这些消息都在处理之前的消息时被搁置。为了改善这一点,我正在考虑在MDB业务逻辑中实现一个线程池,这样一旦MDB接收到消息并将其传递给线程,它就可以免费使用另一条消息。

现在,在实现这个之前,我想监控我的JMS队列,以检查消息是否真的在队列中等待。所以我需要知道这个监控是否可以通过一些WAS管理控制台或一些JMX应用程序来完成。我的主要目的是检查队列中每个jms消息的等待时间。

共有1个答案

邵沛
2023-03-14

首先,可以设置并行使用Q的进程数(MDB实例)。默认值为10(每个集群成员..)
使用控制台:资源-

至于监视Q并生成一些负载,您可以查看sourceforge上的JMS工具箱

在JMSToolBox中的“目标信息”对话框中,您还可以看到Q上并发消费者的数量

另外,如果您想测量Q中的消息所花费的时间,只需计算当前时间和JMSTimestampJMS标准属性之间的差异,从消息由MDB在onMessage()方法中处理

 类似资料:
  • 例如,当我们在EJB3中配置监听JMS队列的MDB实例的数量时,

  • 我是JMS新手,经过长时间的搜索,我搜索出了一个连接到JMS的代码,并发布了一条消息。 问题是我需要在远程队列中发布消息,但我不知道如何建立连接到它并发布消息。 服务器类型:TIBCO EMS 服务器主机:******。net 端口:**USername:user passsbrow:user123 队列:**。。。。顺序经营1. 我想建立连接,发布一条简单的消息,然后把它取回。请帮忙!提前谢谢

  • 我试图将一些消息从JMS代码放到本地队列管理器中定义的本地队列中。我在WebSphere MQ中定义了一个本地队列,并使用JMS代码放置消息。我在这里做得对吗。我没有看到WebSphere队列中的消息。 以下是代码:

  • 目前我有一个Weblogic 10R3开发的Java EE应用程序主机,我有兴趣测试1个消息驱动Bean。问题是我无法访问Bean正在侦听的外部JMS服务器,以下是MDB代码: 我的计划是,Bean将通过JNDI查找队列,并且我确实可以访问Weblogic托管服务器。因此,我可以删除外部JMS服务器,然后添加一个本地JMS队列和包含确切JNDI名称的connectionFactory。因此,隔离外

  • 问题内容: 我想我有点困惑这里发生了什么。在phpmyadmin的Status-> Monitor部分中,当我的网站当时甚至不执行任何基于sql的操作时,我会收到6000个问题和200个连接。 这似乎很不正常,任何人都可以给我一些有关这里实际发生情况的提示,这不正常,对吗? 编辑:林试图每五秒钟连接到大约四个不同的表并从中提取信息,我相信这会导致我的服务器崩溃。这是不好的说法吗? 我正在使用jqu

  • 我在域模式下运行Wildfly17。我们一直在手动添加JMS队列,但我宁愿将配置作为部署脚本的一部分添加。我可以使用创建服务器和数据源,但在队列方面似乎没有任何进展。我希望domain_config.xml的结尾如下所示: 我已经研究了如何在Wildfly中使用CLI设置消息传递子系统,但我得到的都是错误。 domain_config.xml的完整嵌套是: