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

查看 70|回复 4
作者:adpw001   
从网上查阅资料知道,RabbitMQ 想要做 故障转移+高可用+负载均衡 有两种方式(不考虑客户端路由的情况)
[ol]
  • Nginx( 1.90 后的 stream 模块)
  • HAProxy + KeepAlived
    [/ol]
    两种方案貌似都能实现(也不是特别的确定,根据目前搜集到的资料来说是可以的)。纠结点就在于这,选哪一种?
    目前我们现状是这样子的,生产还没有过使用了 HAProxy + KeepAlived 的场景;而 Nginx 是我们已有的技术栈。所以从成本和风险上来说,肯定是首先选择 Nginx;但我看目前网上资料大部分又都是选了 HAProxy + KeepAlived,这就让我很疑惑了。
  • 后者比前者更优秀吗?体现在哪
  • 后者对 AMQP 协议支持更加全面?

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

    Nginx, keepalived, haproxy, rabbitmq

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

    返回顶部