随笔分类 -  RocketMQ

摘要:概述 对于一个消息中间件来讲,高可用功能是极其重要的,RocketMQ 当然也具有其对应的高可用方案。 在 RocketMQ 中,有主从架构和 Dledger 两种高可用方案: 第一种通过主 Broker 将消息发送到从 Broker 实现高可用,在主 Broker IO 压力大或宕机的时候,从 B 阅读全文
posted @ 2021-12-17 18:24 en_oc 阅读(740) 评论(0) 推荐(0) 编辑
摘要:概述 在上文中,我们讨论了消费者对于消息拉取的实现,对于 RocketMQ 这个黑盒的心脏部分,我们顺着消息的发送流程已经将其剖析了大半部分。本章我们不妨乘胜追击,接着讨论各种不同的消息的原理与实现。 事务消息 概念 RocketMQ 中的事务消息功能,实际上是 分布式事务中的本地事务表 的实现,只 阅读全文
posted @ 2021-11-19 17:28 en_oc 阅读(655) 评论(0) 推荐(0) 编辑
摘要:概述 当消息被存储后,消费者就会将其消费。 这句话简要的概述了一条消息的最总去向,也引出了本文将讨论的问题: 消息什么时候才对被消费者可见? 是在 page cache 中吗?还是在落盘后?还是像 Kafka 一样维护了一个 ISR 队列,等到副本都将消息也落盘后才可见? 消息如何到达消费者手里? 阅读全文
posted @ 2021-11-12 16:55 en_oc 阅读(1823) 评论(0) 推荐(0) 编辑
摘要:概述 上一章中,已经介绍了 Broker 的文件系统的各个层次与部分细节,本章将继续了解在逻辑存储层的三个文件 CommitLog、IndexFile、ConsumerQueue 的一些细节。文章最后,还会对比下 RocketMQ 和 Kafka 的持久化结构与设计的合理性。 CommitLog 现 阅读全文
posted @ 2021-11-07 16:31 en_oc 阅读(1263) 评论(0) 推荐(0) 编辑
摘要:概述 在 Broker 的通用请求处理器将一个消息进行分发后,就来到了 Broker 的专门处理消息存储的业务处理器部分。本篇文章,我们将要探讨关于 RocketMQ 高效的原因之一:文件结构的良好设计与对 Page Cache 的极致"压榨"。 文件系统的结构设计 在 RocketMQ 的 Bro 阅读全文
posted @ 2021-11-02 17:08 en_oc 阅读(1128) 评论(2) 推荐(0) 编辑
摘要:概述 在上一节 RocketMQ源码详解 | Producer篇 · 其二:消息组成、发送链路 中,我们终于将消息发送出了 Producer,在短暂的 tcp 握手后,很快它就会进入目的 Broker。这次我们来自底向上的看下 Broker 端是如何接收然后分发处理消息,同时了解 RocketMQ 阅读全文
posted @ 2021-10-29 16:21 en_oc 阅读(946) 评论(0) 推荐(0) 编辑
摘要:概述 在上一节 RocketMQ源码详解 | Producer篇 · 其一:Start,然后 Send 一条消息 中,我们了解了 Producer 在发送消息的流程。这次我们再来具体下看消息的构成与其发送的链路 Message 在 RocketMQ 的使用中,Message 类是在发送消息时必须用到 阅读全文
posted @ 2021-10-28 17:08 en_oc 阅读(1120) 评论(0) 推荐(0) 编辑
摘要:概述 DefaultMQProducer producer = new DefaultMQProducer("please_rename_unique_group_name"); producer.start(); try { /* * Create a message instance, spec 阅读全文
posted @ 2021-10-17 14:55 en_oc 阅读(1130) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示