消息中间件RocketMQ原理解析 - 斩秋
broker 即 brokerAddrTable 中的值是怎么获得的, 1. 发送消息的时候指定会指定 topic,如果 producer 集合中没有会根据指定 topic 到 namesrv 获取 topic 发布信息 TopicPublishInfo,并放入本地集合 2. 定时从 namesrv 更新 topic 路由信息, Producer 与 broker 间的心跳 Producer Producer 定时发送心跳将 producer 信息(其实就是 procduer 的 group)定时发送到, brokerAddrTable 集合中列出的 broker 上去 Producer 发送消息只发送到 master 的 broker 机器,在通过 broker 的主从复制机制拷贝到 broker 的 slave 上去 二:Producer 如何发送消息 //自增整型 方法 selectOneMessageQueue 方法用来选择一个发送队列 (++sendWitchQueue) % messageQueueList.size 为队列集合的下标 每次获取 queue 都会通过 sendWhichQueue 加一来实现对所有 queue 的轮询 如果入参 lastBrokerName 不为空,代表上次选择的 queue0 码力 | 57 页 | 2.39 MB | 1 年前3RocketMQ v3.2.4 开发指南
的拉消息方法从 Broker 拉消息,主劢权由应用控制。 Producer Group 一类 Producer 的集合名称,返类 Producer 通常収送一类消息,丏収送逡辑一致。 Consumer Group 一类 Consumer 的集合名称,返类 Consumer 通常消费一类消息,丏消费逡辑一致。 Broker 消息中转角色,负责存储消息,转収消息,一般也称为 Producer 吐一些队列轮流収送消息,队列集合称为 Topic,Consumer 如果做广播消费,则一个 consumer 实例消费返个 Topic 对应的所有队列,如果做集群消费,则多个 Consumer 实例平均消费返个 topic 对应的 项目开源主页:https://github.com/alibaba/RocketMQ 11 队列集合。 能够保证严格的消息顺序 2、广播消费 messageQueueListener 监听队列变化 offsetStore 消费进度存储 registerTopics [] 注册的 topic 集合 allocateMessageQueueStrategy AllocateMessageQueueAveragely Rebalance 算法实现策略 项目开源主页:https://github0 码力 | 52 页 | 1.61 MB | 1 年前3Ubuntu 桌面培训 2010
Thunderbird 由 Mozilla 基金会开发,它是一个自由的、跨平台的电子邮件和新闻 组应用程序。 90 收发邮件 目录 Lucid Lynx 小提示: Mozilla 软件组合是一个集成的互联网程序集合,包括网页浏览器,电子邮件和新闻 组客户端,互联网中继聊天(Internet Relay Chat, IRC)客户端,地址簿管理器和网 页创建工具。 Thunderbird 处在 Universe0 码力 | 540 页 | 26.26 MB | 1 年前3
共 3 条
- 1