面试题答案
一键面试建立连接过程
- Broker启动:Broker在启动时,会向所有配置的NameServer地址发起连接请求。这是基于TCP协议的长连接建立过程。
- NameServer响应:NameServer接收到Broker的连接请求后,会验证Broker的合法性(如是否配置允许连接等),若合法则接受连接,建立起两者之间的TCP长连接。
信息交互频率
- 心跳机制:Broker每隔30秒向NameServer发送心跳包。这个心跳包用于维持连接的有效性,同时告知NameServer自己仍然存活且处于正常运行状态。
- 定期更新:Broker会在每次心跳时,向NameServer同步或更新自身的Topic路由信息等关键数据,确保NameServer上的信息是最新的。
通信过程中传递的关键信息
- 基本信息:包括Broker的名称、所属集群名称、Broker角色(Master或Slave)等标识性信息。
- Topic路由信息:每个Broker负责的Topic列表,以及这些Topic对应的Queue分布情况等,用于客户端进行消息发送和消费时的路由指引。
- Broker自身状态信息:如Broker的负载情况(例如可用内存、CPU使用率等),以便NameServer在进行路由决策时能综合考虑各Broker的实际状态。