RocketMQ 源码分析03 broker 启动

先看BrokerStartUp方法

一、createBrokerController 创建brokerController

1.初始化NettySystemConfig

  1.1 如果配置的发送sndbuf和接收rcvbuf为空,就设置默认大小  

  1.2 构造options,然后解析成命令行commandLine,如果为空,系统就退出

  1.3 设置监听listenPort

  1.4 根据不同的command类型,加载不同的配置

  1.5 根据config配置创建controller, 并且完成注册

二、调用start方法

 调用controller.start()

2.1 启动消息存储messageStore

2.2 启动remotingServer

2.3 启动sslContext监听器

2.4 启动pull模式的请求处理

2.5 扫描异常的channel服务启动

2.6 创建filterServer,start启动

2.7 如果是slave角色的broker,启动事务消息检查,遍历未提交、未回滚的部分消息并向生产者发送检查请求以获取事务状态 // 进行偏移量的检查和计算等操作,并移除掉需要丢弃的消息

2.8 处理slave同步操作,同步topic配置、消费者偏移量、延迟偏移量、订阅组配置等信息

2.9  注册broker到NameServer

2.10 启动BrokerStatsManager,统计信息

2.11 快速失败处理,主要用户清理掉各个队列中已经过期的请求

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

producer意外宕机,broker会主动回调producer group内的任意一台机器来确认事务状态

广播方式,消费组下面的每个实例consumer就会消费全量数据

1.消息索引 key--> offset

2.事务消息状态

3.定时发送消息

 

 

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值