rocketmq 如何保证高可用_面试宝典之消息队列如何保证高可用?

既然用了MQ,那么面试官肯定会问你如何来保证可用性?

面试官心理剖析:

主要是看你了不了解MQ的高可用,如果你只是简单的用用,不考虑高可用,那么面试官会觉得你是挖坑的。

回答:

这里分两种类型的MQ来讲,一种是分布式的;还有一种是主从架构的;

(1)RabbitMQ的高可用性

rabbitmq有三种模式:单机模式,普通集群模式,镜像集群模式

1、单机模式

这个是你自己玩玩的,如果线上你使用了这个,那么面试你基本没戏

2、普通集群模式

MQ1里面保存queue的元数据和实际数据,MQ2里面保存了queue的元数据。如果客户端消费数据连到MQ2,但是实际数据在MQ1里面,那么MQ2会从MQ1中获取到数据,在返回给客户端。其实这种模式也是单机的,如果MQ1挂了,那么系统就不可用了

缺点:

1)会产生大量数据传输;

2)queue所在的节点宕机了,导致数据丢失,那么可用性就不能保证;

这个方案是不能保证可用性的。

3、镜像集群模式

生产者调用MQ1,MQ1会把queue的元数据和实际数据同步给MQ2,消费者不管消费哪个MQ,都可以获取到数据。就是其中一个宕机也不影响使用。

这个方案是RabbitMQ真正的高可用方案࿱

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值