gpt4 book ai didi

mqtt - Mosquitto vs Mosca 水平可扩展性和弹性?

转载 作者:行者123 更新时间:2023-12-02 15:16:17 26 4
gpt4 key购买 nike

我计划使用 Mosca 或 Mosquitto 代理(因为它们是开源的)以实现具有消息队列复制的可扩展架构,以避免在代理最终出现故障时丢失代理尚未传送的消息。< br/>正如我所读到的,mosquitto 是一个成熟且非常稳定的解决方案,具有使用网桥进行水平扩展的能力。但是我找不到任何插件来将消息写入数据库(所有代理都通用),所以我认为这是一个限制,因为如果我们有两个代理负载平衡并且其中一个死了,那么所有的消息都是这个在经纪人恢复之前无法交付经纪人。另一方面,Mosca 允许我们使用 Redis 进行扩展,如果代理 1 死了,那么代理 2 仍然可以传递消息,因为它们存储在一个公共(public)数据库中。这样我就可以使用redis的主从配置来避免单点故障。

所以我的问题是:

1) mosca 是制作的好选择吗?

2) mosquitto可以使用redis分配消息队列吗?

最佳答案

水平可扩展性很难作为一项功能添加到 MQTT 代理中,因为它需要从一开始就针对可扩展性进行工程设计。此外,仅仅为未传递的消息复制队列无助于弹性或容错。

即使添加起来很容易,我也不会使用 Redis,因为它基本上会丢失消息:https://aphyr.com/posts/283-jepsen-redis

如果您想要水平可扩展性,我建议检查具有集群、内置水平(或更好:线性)可扩展性并允许网络拆分的代理。

这是一个关于 MQTT 和集群的系列:http://www.hivemq.com/blog/clustering-mqtt-introduction-benefits/

关于mqtt - Mosquitto vs Mosca 水平可扩展性和弹性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40229375/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com