【问题标题】:WSO2 ESB MessageStore & MessageProcessor support for RabbitMQ?对 RabbitMQ 的 WSO2 ESB 消息存储和消息处理器支持?
【发布时间】:2015-01-12 17:10:38
【问题描述】:

我已经从 WSO2 ESB (v4.8.1) 代理测试了 RabbitMQ (v3.3.5) 的 AMQP 传输实现,但存在一些小问题,现在一切正常。为此,我关注了 this 博文(自 2013 年 3 月 26 日起)。

现在,我想尝试使用带有 RabbitMQ 的 WSO2 MessageStore 和 MessageProcessor,因为我认为这是最好的方法,但似乎这不是 RabbitMQ 的任何实现,WSO2 的文档门户说 nothing 如何实现它。

我知道 RabbitMQ (v3.3.5) 默认没有实现 JMS1.1 和 AMQP1.0,它确实需要额外的插件。那么,我需要遵循什么才能正确实施 MS/MP?。

我已经开始查看 org.apache.synapse.message.store.impl.jms.JmsStore 和 org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor 的当前实现的源代码,但我需要更多指导。

有人实现了自定义MessageStore/MessageProcessor?,你能分享一下你的经验吗?

问候。

【问题讨论】:

    标签: jms rabbitmq wso2esb amqp


    【解决方案1】:

    在挖掘现有的 WSO2 JMS MessageStore 实现之后,我为 RabbitMQ 创建了一个新的 JMS-AMQP MessageStore。使用 WSO2 MessageStore,我可以管理来自 WSO2 ESB 的 DeadLetter Channel 和 GuaranteedDelivery 模式。

    随后的步骤是:

    1) 解决 RabbitMQ 的 AMQP 0.9.1 实现与 JMS 1.1 之间的不兼容问题。

    目前不存在任何使用 JMS 连接到 AMQP 代理的库,除了 Apache Qpid client (0.30)。这是一个很大的帮助。

    2) 改进 WSO2 JMS MessageStore 的现有代码。 我添加了一个新的第二个 JMS 目标,第一个用于消费,另一个用于生成消息。通过这种方式,我必须使用预先配置的 Exchange、路由密钥和队列连接到 RabbitMQ。

    我希望这很有用。 问候。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多