c++ - ActiveMQ-cpp 和 stomp 的耐久性问题

标签 c++ stomp hornetq activemq-cpp durability

我在使用 ActiveMQ-CPP 和 stomp 协议(protocol)创建持久消费者和生产者时遇到了问题。我正在尝试使用 stomp 连接到 HornetQ,并且能够在非持久状态下发送和接收消息。 我尝试将生产者的传递模式与消息的 CMSDeliveryMode 一起设置为持久化,并创建 DurableConsumer 而不是普通消费者,从而将其更改为持久。但是当我查看 JBoss JMX-Console 时,它​​们都被认为是非持久的(消息被归类为非持久的,消费者也被订阅为非持久的)。

我什至尝试了集成测试 StompDurableTest,但只收到 20 条消息中的 10 条(消费者处于事件状态时发送的消息)。所以测试失败了。

由于集成测试不起作用,我猜它与 ActiveMQ-cpp 或 Stomp 配置有关,而不是代码。我是否缺少任何东西来实现耐用性?

提前致谢

萨米

最佳答案

不确定 HornetMQ 是如何工作的,但我看到其他人对目标名称有疑问,因为 hornet 不喜欢 CMS 附加的/topic 和/queue 前缀,以便与 ActiveMQ 一起工作。

另一件需要注意的事情是,对于 Stomp,您的 clientId 和订阅 ID 需要匹配,并且在您每次连接时都保持不变。

问候 蒂姆

www.fusesource.com

关于c++ - ActiveMQ-cpp 和 stomp 的耐久性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4516910/

相关文章:

java - 如果未完成客户确认会怎样?

c++ - 如何在堆上初始化线程? (使用 “new”关键字)

java - 与 JBOSS EAP 6.2 中嵌入的 HornetQ 主题的连接失败

java - HornetQ:哪些版本可以算稳定?

javascript - stomp nodejs 在连接时不发送 header

python - 如何接收 STOMP 中丢失的消息?

javascript - 使用 Jasmine 测试 Web 套接字

c++ - (不是)指针调整破坏了我的一天和堆? (C++)

c++ - 确定 mandelbrot 缩放的坐标

c++ - 在整个范围内使用 vector::erase