RocketMQ企业级部署方案
admin
2023-01-27 03:20:02
0

背景

公司很多业务在使用RocketMQ,前期业务量小,没啥问题,也没有太关注集群的可用性这块,所以全公司的业务公用一个集群,随之公司的业务量增加,业务对RocketMQ集群依赖越来越重,开始思考集群拆分,风险分摊;开始想的是按部门划分,一个部门一个集群,但是部门之间有通过RocketMQ做数据交互的需求,这样会带来的问题是一个应用需要连接两个RocketMQ集群,需要业务方改代码,在开发人不需要改代码的情况下,如何能做到集群无单点、风险分摊,集群未来可以水平扩容呢,我们的方案如下:

集群部署规划

整个集群分三层,分别是应用接入层、Nameserver集群和Broker集群,下面分别对这三部分说明:

接入层

接入层其实就是应用连接MQ集群的地址,目前生产环境我们是直接连接了nameserver的IP地址,如果nameserver扩容或者换服务器了,大家需要修改配置重启服务更新新的nameserver地址,虽然这个事情的几率比较低,但是如果发生了还是比较麻烦,所有我们新的接入方案是负载均衡+域名,大家在程序里面配置连接MQ的地址为:BLB:9876,nameserver1.chj.cloud:9876,nameserver2.chj.cloud:9876,这样同时做了负载均衡和域名的双保险,如果负载均衡器故障,应用会重试去连域名

Nameserver集群

Nameserver本身是无状态的,并且基本没有压力,所以我们计划前期先部署两台;后续需要扩容的时候,需要依次重启broker,让broker也注册到新的nameserver上

Broker集群

Broker负责消息的存储,Broker的部署有多种模式,我们会根据业务需求,部署两种架构:多master多slave(同步复制、同步刷盘)、多master多slave(异步复制、异步刷盘);集群也可以横向扩容

Broker命名规范:奇数为异步复制+异步刷盘类型,偶数为同步复制+同步刷盘类型,如:broker-1,broker-2

架构图

RocketMQ企业级部署方案

Topic管理

根据业务场景,我们把Topic创建到不同的Broker集群上,业务场景分两种情况:一种是需要保证消息不丢,但是对吞吐量要求不高,如订单相关信息,比如下图的TopicA就是用来存储订单相关的Topic,那么我们就把这个Topic创建到同步复制、同步刷盘这样角色的Broker集群上;另一种是对吞吐量要求特别高,但是消息容许发生少量丢失,如车辆上报的监控相关信息,比如下图的TopicB就是用来存储车辆上报的监控相关信息的Topic,那么我们就把这个Topic创建到异步复制、异步刷盘这样角色的Broker集群上

RocketMQ企业级部署方案

相关内容

热门资讯

美国“痛失”杨植麟,这是历史性... 杨植麟的月之暗面创造了Kimi K3,轰动整个世界。他是近年来第一个放弃了美国机会、回中国创业,并且...
铭显光电取得LED显示屏加工夹... 国家知识产权局信息显示,上海铭显光电科技有限公司取得一项名为“一种LED显示屏加工夹具”的专利,授权...
大盘承压依旧登顶,vivo拿下... 7月22日消息,市场调研机构Omdia发布2026年第二季度印度智能市场报告,数据显示本季度印度手机...
白宫发布《科学:新的黄金时代》... 据白宫7月21日消息,白宫科技政策办公室、管理与预算办公室联合发布《科学:新的黄金时代》报告。本次备...
民营商业火箭首次从长三角东海海... 北京时间7月22日10时54分,我国太原卫星发射中心在上海东部海域使用引力一号遥四运载火箭,将搭载的...
美威胁袭伊基础设施,伊朗军方:... △当地时间21日,船只在霍尔木兹海峡航行伊朗武装部队哈塔姆安比亚中央总部当地时间22日发布声明称,美...
扑翼机器人问世:像潜水鸟一样在... 潜鸟、海鸥、海鹦和海燕,是自然界中约100种既能飞行又能游泳的鸟类。这些潜水鸟能够俯冲入水追逐猎物,...
当科学家走进西部脑谷:这里有望... 7月22日,2026天府科学家创新发展大会暨成都科产融合对接活动锦江经开区脑机接口专场在锦江区成功举...
女子身份证丢失后名下出现“吸毒... 四川籍的庞女士定居浙江宁波多年,她怎么也没想到,因丢失身份证一事,竟让她陷入长达7年“自证清白”的困...
省农科院成功研发我省首个高粱全... 近日,记者从省农科院获悉,该院作物资源研究所、农业生物技术研究所联合石家庄博瑞迪生物,成功研制出省内...