【发布时间】:2012-11-04 06:43:35
【问题描述】:
我正在尝试从 ActiveMQ 5.6 切换到 Apollo 1.5。 我有两个软件正在交换消息,使用发布/订阅主题。
- 第一个是c++,使用openwire和tcp
- 第二个是Javascript,使用stomp和websockets
使用 ActiveMQ 一切正常,我发送的消息可以在两个软件上读写,此后我没有更改客户端。
现在,我从 c++ 软件(使用 openwire)发送消息,并尝试用 JS 软件读取它们,但我得到了错误。事实上,我收到带有标题内容类型的消息:“protocol/openwire”,但我期待 stomp。
这就是我配置 apollo.xml 连接器部分的方式:
<connector id="tcp" bind="tcp://0.0.0.0:61613">
<openwire max_inactivity_duration="-1" max_inactivity_duration_delay="-1" />
<stomp max_header_length="10000" die_delay="-1" />
</connector>
<connector id="ws" bind="tcp://0.0.0.0:61623">
<stomp max_header_length="10000" die_delay="-1" />
</connector>
我也尝试在 tcp 和 ws 连接器中使用
有人可以帮我解决这个问题吗?
谢谢,
编辑:
我发现我确实收到了 stomp 协议消息,但它们的格式非常奇怪,甚至包含非文本字符,导致 stomp.js 无法解析消息并正确填充消息正文。
这里是从 activemq openwire 和 apollo openwire 收到的相同消息,使用相同的 c++ 发布者和 js 订阅者:
活跃的mq
“信息 消息 ID:ID:myID-61443-1352999572576-0:0:0:0:0 类:Message.PointToPoint 目的地:/主题/我的主题 时间戳:1352999626186 过期:0 订阅:sub-0 优先级:4阿波罗
“信息 订阅:sub-0 目的地: 内容长度:331 内容类型:协议/openwire 消息 ID:xps-broker-291 Eç{#ID:myID-61463-1352999939140-0:0emy-topicn{#ID:myID-61463-1352999939140-0:0; Å??你认为这可能是 Apollo 的问题吗?
【问题讨论】:
标签: activemq messagebroker apollo