RabbitMQ 高可用+负载均衡 实现方案求助

299 天前
 adpw001

从网上查阅资料知道,RabbitMQ 想要做 故障转移+高可用+负载均衡 有两种方式(不考虑客户端路由的情况)

  1. Nginx( 1.90 后的 stream 模块)
  2. HAProxy + KeepAlived

两种方案貌似都能实现(也不是特别的确定,根据目前搜集到的资料来说是可以的)。纠结点就在于这,选哪一种?

目前我们现状是这样子的,生产还没有过使用了 HAProxy + KeepAlived 的场景;而 Nginx 是我们已有的技术栈。所以从成本和风险上来说,肯定是首先选择 Nginx;但我看目前网上资料大部分又都是选了 HAProxy + KeepAlived,这就让我很疑惑了。

有经验的大牛们,知道这两者的区别到底在哪吗

1097 次点击
所在节点    程序员
4 条回复
hanyu2pomelo
299 天前
KeepAlived+Nginx+ RabbitMQ,高可用+负载均衡,岂不美哉
perfectlife
299 天前
我感觉没区别,要我我就选 nginx 四层代理,简单省事,另外高可用你用镜像集群模式应该就可以了吧,至于性能,反正用 rabbitmq 就别太要求太高的性能了
Scarb
299 天前
应该都可以,不觉得 HAProxy 更优秀
onetown
299 天前
rabbitmq, 负载均衡就可以了吧, 还要做故障转移, 是消息都没 ack 吗?
rabbitmq 是目前我用下来 cluster 最简单的一个消息队列组件了, 配置好, 直接无脑配置 haproxy 的 backend, server1,2,3 就可以了, 不过需要 haproxy 加 option clitcpka, 用来 keepalive (不是 keepalived), 我在想 op 是不是把这个 clitcpka 和 keepalived 搞混了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/960267

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX