【问题标题】:Apache Cassandra integration with RabbitMQApache Cassandra 与 RabbitMQ 的集成
【发布时间】:2016-06-08 19:08:57
【问题描述】:

我想使用 MQTT 作为与 RabbitMQ 消息代理的协议通信,但是从 rabbitmq 网站我发现了这一段:

这些实现适用于开发,但有时不适合生产需求。 MQTT 3.1 规范没有定义保留消息存储的一致性或复制要求,因此 RabbitMQ 允许自定义满足特定环境的一致性和可用性需求。例如,基于 Riak 和 Cassandra 的存储将适用于大多数生产环境,因为这些数据存储提供可调的一致性。

https://www.rabbitmq.com/mqtt.html

所以,从这一段开始,我应该使用 Cassandra 作为 RabbitMQ 的数据库,但是我没有找到任何关于集成 Cassandra 作为 rabbitmq 的数据库的信息。

你能给我一些东西来帮助我吗?

注意:我是 RabbitMQ 的新手。

【问题讨论】:

    标签: cassandra rabbitmq message-queue mqtt


    【解决方案1】:

    该段落特指 MQTT 规范中的“保留消息”部分,例如,您希望长期保留的消息。就像“最后知道的配置”一样,您可能希望将其应用于任何 MQTT 订阅者,无论它在消息发布时是否已在线和订阅。

    这是一种非常特殊的情况,除非您需要该功能,否则您不必担心将 RabbitMQ 用作 MQTT 代理。对于常规消息,内置的 RabbitMQ 复制选项非常适合并且可用于生产。

    【讨论】:

    • 其实我会需要这个功能,但是还是不能把Cassandra配置成数据库而不是mensia(rabbitmq的默认数据库)
    • Mnesia 被用作 rabbitmq 的后端来持久化队列和设置,没有理由将其交换给 Cassandra。
    【解决方案2】:

    到目前为止,RabbitMQ 不支持此功能。 因此,不能使用其他数据库代替 Mnseia 数据库

    【讨论】:

    • 问题是:为什么消息队列应该直接连接到数据库?我不会认为这是一个功能。
    猜你喜欢
    • 2012-09-01
    • 1970-01-01
    • 2018-10-04
    • 1970-01-01
    • 2019-08-16
    • 1970-01-01
    • 2013-11-29
    • 2012-05-08
    • 1970-01-01
    相关资源
    最近更新 更多