RocketMq
文章平均质量分 80
RocketMq
Miaoshuowen
这个作者很懒,什么都没留下…
展开
-
RocketMq5 消息消费及相关源码浅阅
消费者也必须和namesvr保存长连接,consumer从namesvr每隔30s获取topic路由信息。从而根据负载策略进行消费的消费。:同一个消费者组中多个消费者不能同时消费多个主题topic,如果出现此现象,会导致部分消息无法消费,如上图。:默认消费模式就是 一个消费者组消费一个主题(使用负载均衡算法进行分配)查看mqClientFactory.doRebalance()方法实现。一个消费者组不同的消费者是否可以同时消费多个主题?不同的消费者组,是否可以消费相同同的topic?......原创 2022-08-18 01:36:14 · 730 阅读 · 1 评论 -
RocketMq4 消息发送示例及源码浅阅
根据远程调用对象remotingclient调用namesvr,获取路由信息。Remoteing底层就是netty。随机算法:根据队列的长度,获取队列长度范围的随机数,根据获得结构,返回此角标位置的队列。- 同步发送: 失败重试次数 == 设置次数(默认是2次) + 1。topicPublishInfoTable就是本地缓存数据。- 异步发送: 默认就是1次。获取namesvr路由信息。...原创 2022-08-17 00:05:50 · 277 阅读 · 0 评论 -
RocketMq3 架构及名词解释
Broker 部署相对复杂,Broker 分为 Master 与 Slave,一个 Master 可以对应多个 Slave,但是一个 Slave 只能对应一个 Master,Master 与 Slave 的对应关系通过指定相同的BrokerName,不同的 BrokerId 来定义,BrokerId 为 0 表示 Master,非 0 表示 Slave。Master 也可以部署多个。...原创 2022-08-13 00:56:19 · 306 阅读 · 0 评论 -
RocketMq2 基本理论
Topic 是一个逻辑上的概念,实际上 Message 是在每个 Broker 上以 Queue 的形式记录。从上面的图片可以总结下几条结论。也就是说每个 Topic 在 Broker 上会划分成几个逻辑队列,每个逻辑队列保存一部分消息数据,但是保存的消息数据实际上不是真正的消息数据,而是指向 commit log 的消息索引。一个消息从发送,到接收,最简单的步骤:producer,topic,consumer,先由简单到复杂的来理解它的一些核心概念消息先发到 Topic,然后消费者去 Topic原创 2022-08-12 23:34:10 · 163 阅读 · 0 评论 -
RocketMq1 简介及应用场景
假设三个业务节点每个使用 50 毫秒钟,不考虑网络等其他开销,则串行方式的时间是 150毫秒,并行的时间可能是 100 毫秒。日志采集客户端,负责日志数据采集,定时写受写入 消息队列,负责日志数据的接收,存储和转发 日志处理应用:订阅并消费 队列中的日志数据。小结:如以上案例描述,传统的方式系统的性能(并发量,吞吐量,响应时间)会有瓶颈。日志处理是指将消息队列用在日志处理中,比如 Kafka 的应用,解决大量日志传输的问题。b、并行方式,将注册信息写入数据库成功后,发送注册邮件的同时,发送注册短信。....原创 2022-08-10 00:13:45 · 1307 阅读 · 0 评论