【问题标题】:Where to find messages in HornetQ在 HornetQ 中哪里可以找到消息
【发布时间】:2015-09-15 16:44:03
【问题描述】:

我编写了一个简单的应用程序,它发送消息并在同一个应用程序中接收消息。现在我想知道在哪里可以找到 HornetQ 中发送的所有消息?

【问题讨论】:

    标签: jms hornetq


    【解决方案1】:

    您可以通过两种方式检查到 HornetQ 的消息传递。

    方法一: 最简单的方法,使用 JConsole,从 JDK 目录打开 JConsole 并从本地进程中选择 hornetQ 进程(我假设您在本地机器中有 hornetq,否则您需要启用远程 JMX)并选择连接并转到 MBans,如下图所示。并选择org.hornetq -> Queue -> JMS -> Your Queue -> Attributes。 message count 和 message added 两个参数表示 JMS 消息状态(注意这里不能读取消息)

    方法二: Hermes JMS,下载 Hermes JMS(如果您使用的是 windows 7,请从here 下载 1.15 版本)。通过执行 jar 安装 HermesJMS。 HermesJMS安装后在bin目录下执行hermes.bat(如果没有启动,需要编辑批处理文件hermes.bat,在set HERMES_HOME后面加上set HERMES_CONFIG={valid accessible directory})。

    现在如下配置 Hermes JMS。

    1. 转到操作-> 新会话,在弹出窗口中单击窗口底部的提供程序选项卡。右键单击类路径组并选择添加组并输入 HornetQ 并单击确定。
    2. 展开 hornetQ 并右键单击库并选择添加 jars 在执行 3 &4 步骤后添加以下所有 jars。
    3. 平均时间转到 {HermesJMS 主目录}\providers 创建目录 HermesJMS 并从 hornetq 服务器的 hornetq\lib 目录复制以下库

      hornetq-core-client.jar
      hornetq-jms-client.jar
      hornetq-logging.jar
      jboss-jms-api.jar
      jnp-client.jar
      netty.jar
      
    4. 保存并重新启动 HermesJMS 应用程序

    5. 连接工厂部分

      binding = ConnectionFactory
      initialContextFactory = org.jnp.interfaces.NamingContextFactory
      providerURL = jnp://localhost:1099
      urlPkgPrefixes = org.jnp.interfaces:org.jboss.naming
      
    6. 用名称保存设置

    7. 右键单击会话 -> 您在步骤 6 中创建的新会话,然后选择发现。它将填充所有 JMS 队列。
    8. 现在选择您的目标 JMS 队列并单击浏览。

    注意 HoentQ 不会存储从您的侦听器读取的消息,因此如果您需要在 HermesJMS 中查看消息,您需要在延迟后读取消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-26
      • 2016-09-17
      • 1970-01-01
      相关资源
      最近更新 更多