1. 简介
Broker 启动入口是 BrokerStartup.java => main() ,跟上一篇讲的 NameSrv 类似,首先会从启动命令判断 -c 参数,读取自定义配置文件。然后创建 BrokerController 对象,负责初始化和启动操作。
Broker 主要配置类有3个:
- BrokerConfig:Broker相关的配置参数
- NettyServerConfig:Netty服务端配置,默认端口号10911。NameSrv 也有这个配置,默认端口9876
- NettyClientConfig:Netty客户端配置
2. BrokerController 初始化
代码位置: BrokerController.java => initialize()
2.1 加载TopicConfig
文件路径:{MessageStoreConfig.storePathRootDir}/config/topics.json
记录每个Topic的信息,例如:topic名称、topic读写权限、queue的可读数量、q