企业每年向工商网站做申报,网站建设定制,网站开发竞聘报告,邯郸招工信息网生产过程 消费过程
存储
在RocketMQ中#xff0c;一个Broker的所有Topic的消息都会被写入到同一个CommitLog文件中。 每个队列#xff08;Queue#xff09;都有对应的ConsumeQueue文件。 ConsumeQueue每个记录定长#xff0c;20字节#xff0c;消息在commitlog中的偏移量…生产过程 消费过程
存储
在RocketMQ中一个Broker的所有Topic的消息都会被写入到同一个CommitLog文件中。 每个队列Queue都有对应的ConsumeQueue文件。 ConsumeQueue每个记录定长20字节消息在commitlog中的偏移量tag消息大小 ConsumeQueue是一个轻量级的索引文件包含指向CommitLog中消息的指针偏移量offset、消息长度和消息标签的哈希码等信息。 indexfile通过消息key快速定位消息的途径 slot tableindex linkedList。用key来hash然后放入slot
consumer从consumerQueue获取offset然后用offset从commitlog中获取消息。
短轮询 长轮询 长轮询就是consumer的pull后broker不立刻返回而是挂起当检测到有消息后或者超时返回。 保证broker不会被consumer带节奏。
producer生产消息发送给broker的流程
Producer 向 NameServer 注册NameServer 提供 Broker 信息Producer 获取 Broker 地址 Producer 会缓存从 NameServer 获取的路由信息并且只在必要时更新这些信息 Producer 与 Broker 建立 TCP 连接