RocketMQ
RocketMQ学习
道格拉斯范朋克
中间件
展开
-
RocketMQ之事务消息
RocketMQ事务消息实现的示意图:通过写Half消息的方式来实现一阶段消息对用户不可见 通过Op消息来标记事务消息的状态 通过读取Half消息来生成一条新的Normal消息来完成二阶段Commit之后消息对Consumer可见 通过Op消息来执行回查优势:Half Queue和Op Queue的数量可控,不会随着Topic的增加而增加 没有外部依赖,实现自包含缺陷:每条事务消息至少需要写一条Half消息(异常情况可能会有多条)和Normal,写放大了 所有Half消息都是写到全原创 2021-04-15 19:44:32 · 157 阅读 · 0 评论 -
RocketMq-c++客户端在win下的示例
https://download.csdn.net/download/zhaoxiaozhao622/10146274原创 2020-01-13 16:11:41 · 2298 阅读 · 0 评论 -
RocketMQ核心概念
Topic:消息主题,⼀级消息类型,⽣产者向其发送消息。通过 Topic 对消息进⾏分类。⽣产者:也称为消息发布者,负责⽣产并发送消息⾄ Topic。消费者:也称为消息订阅者,负责从 Topic 接收并消费消息。消息(Message):⽣产者向 Topic 发送并最终传送给消费者的数据和(可选)属性的组合。消息队列中信息传递的载体消息属性:⽣产者可以为消息定...原创 2020-01-07 18:42:26 · 185 阅读 · 0 评论 -
从read函数到零拷贝
操作系统分为“用户态”和“内核态”,文件操作、网络操作需要涉及这两种形态的切换,免不了进行数据复制,一台服务器把本机磁 盘文件的内容发送到客户端 一般分为两个步骤:1 ) read(file, tmp buf, len);,读取本地文件内容;2) write(socket, tmp_buf, len);,,将读取的内容通过网络发送出去。tmp_buf是预先申请的内存,这两个看似简单的操作,...原创 2020-01-07 16:53:17 · 449 阅读 · 0 评论 -
RocketMQ的commitlog索引文件indexfile生成规则
Indexfile的文件存储结构Index File StructIndexfile的逻辑关系一个文件大小约400MTable 1 Index File关系图使用messagekey查询IndexFile:消息的索引文件,存储消息Key与Offset的对应关系。如果一个消息包含key值的话,会使用IndexFile存储消息索引,文件的内容结构如图...原创 2020-01-07 08:54:03 · 1082 阅读 · 0 评论 -
RocketMQ的MesssageId的生成
public static String createMessageId(final ByteBuffer input, final ByteBuffer addr, final long offset) { input.flip(); int msgIDLength = addr.limit() == 8 ? 16 : 28; input.li...原创 2020-01-06 16:15:43 · 1478 阅读 · 0 评论 -
RocketMQ在win安装调试
1、下载环境http://rocketmq.apache.org/dowloading/releases/下载一个二进制一个源代码2、设置环境变量ROCKETMQ_HOME=解压后的文件目录例如D:\rocketmq-all-4.6.0-bin-release3、解压源代码打开Eclipse,导入maven工程。在E:\ThirdPart\rocketm...原创 2020-01-03 17:28:46 · 221 阅读 · 0 评论 -
RocketMQ框架源码要点
环境安装RMQ核心概念命名服务进程RMQ的indexfile存储机制MQ消息存储机制顺序消息消息可靠性心跳维护机制客户端如何查找、维护topic对应的路由信息的事务消息定时消息消息重试流量控制死信队列批量发送机制https://blog.csdn.net/fly910905/article/details/85317351ASP...原创 2020-01-02 13:18:26 · 199 阅读 · 0 评论