【问题标题】:Amazon MQ does not receiving any queue messageAmazon MQ 未收到任何队列消息
【发布时间】:2023-03-07 04:36:02
【问题描述】:

我有一个 NodeJS 程序,它使用 mqtt NPM 插件向 Amazon MQ 发送消息。我配置了队列并订阅了,然后发布消息。 Here 是代码。

监听器使用 OpenWire JMS 客户端,我使用 MQTT 或 WSS 发送消息。在这两种情况下,JMS 客户端都没有收到任何消息。

如果我为接收器编写 NodeJS 代码,它就可以工作。

JMS 客户端是否必须使用 MQTT / WSS 来接收消息?协议在这里重要吗?

【问题讨论】:

    标签: node.js activemq amazon-mq


    【解决方案1】:

    MQTT 是基于主题的消息传递协议,因此从 MQTT 发布者发送的消息的订阅者需要监听主题而不是队列。当不存在订阅时,将发布/订阅主题,除非在生成消息之前存在持久的主题订阅,否则消息将被丢弃,因此请注意这一点。

    在 ActiveMQ 中,有多种方法可以将 routing 消息从一个目的地发送到另一个目的地,因此您可以利用它来路由消息,或者您可以使用类似 Camel 的路由来将从 MQTT 客户端发送的主题消息转发到排队。

    【讨论】:

    • 我能说我只有一个选择,那就是 OpenWire For Queue-based 消息传递协议吗?
    • 不,您可以根据您的消息传递客户端需求选择 STOMP、AMQP 或 OpenWire,如果您选择使用 Camel 或内部代理目标转发,则可以使用 MQTT。
    • 谢谢蒂姆,最后我用 STOMP 修复了这个。感谢您的帮助
    猜你喜欢
    • 2013-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多