美文网首页
RocketMQ的基本的架构原理

RocketMQ的基本的架构原理

作者: G__yuan | 来源:发表于2021-06-23 10:03 被阅读0次

MQ如何集群化部署来支撑高并发访问以及如何存储海量数据

这么想RocketMQ单机可以扛下10万的并发,那么让多台机器一起来提供服务,让几十万甚至更多的请求分散到这部署的多台机器是不是就可以了,让每台机器承受的QPS不超过10万就好了。


image.png

存储数据也是同样的道理,把这海量的数据分散发送到这多台机器上每台机器保存一部分数据,分布式存储这些信息。RocketMQ的实现原理就是,它会跑一个Broker进程,每个Broker都会收到不同的消息,然后就会把这批消息存储在自己的本地磁盘文件里。


image.png

高可用如何保证,万一Broker宕机了怎么办呢

RockerMQ采用的解决思路是:Broker主从架构以及多副本策略。


image.png

Master Broker 收到消息之后,会同步给slave Broker,这样Slave Broker就有一份和Master Broker一模一样的副本消息数据。这种情况下,如果一个Master Broker 出现故障,还有一个Slave Broker上有副本数据,可以保证数据的不丢失还能继续提供服务,保证高可用。

数据路由,怎么知道访问那个Broker呢

生产者和消费者是如何知道有哪些Broker呢,是如何知道该连到那一台的Broker上去发送消息和消费消息呢,为了解决这问题,RockerMQ引入了NameServer的概念,它也是独立部署在几台机器上的,然后所有的Broker都会把自己注册到NameServer ,然后生产者,消费者从NameServer获取消息。


image.png

相关文章

网友评论

      本文标题:RocketMQ的基本的架构原理

      本文链接:https://www.haomeiwen.com/subject/xznvyltx.html