博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kafka(七):消息格式
阅读量:4280 次
发布时间:2019-05-27

本文共 579 字,大约阅读时间需要 1 分钟。

1.kafka消息格式:

(1)一个Kafka的Message由一个固定长度的header和一个变长的消息体body组成

 (2)header部分由一个字节的magic(文件格式)和四个字节的CRC32(用于判断body消息体是否正常,是否丢包,数据不一样CRC32算出来的数字也是不一样的)构成。
        当magic的值为1的时候,会在magic和crc32之间多一个字节的数据:attributes(保存一些相关属性,比如是否压缩、压缩格式等等);如果magic的值为0,那么不存在attributes属性
(3)body是由N个字节构成的一个消息体,包含了具体的key/value消息

备注:Kafka 0.10.0之前版本的格式

2.kafka Log消息格式(如下图)

        (1)存储在磁盘的日志采用不同于Producer发送的消息格式,

        (2)每个日志文件都是一个“log entries”序列
            (a)每一个log entry包含一个四字节整型数(message长度,值为1+4+N)
            (b)一个字节的magic
            (c)四个字节的CRC32值
            (d)最终是N个字节的消息数据。每条消息都有一个当前Partition下唯一的64位offset
        (3)其实这个log entries也不是一个文件,是一个index(索引文件)和一个log日志文件

3.参考

1.

 

你可能感兴趣的文章
SSL 数字证书的标准、编码以及文件扩展名
查看>>
装X - 建立自己的斗图网站库
查看>>
React.js: web开发者的14个工具和资源
查看>>
一次dns缓存引发的惨案
查看>>
那些年我们“投(shua)”过的票
查看>>
5亿整数的大文件,怎么排序?
查看>>
数据不够怎么训练深度学习模型?不妨试试迁移学习
查看>>
tomcat结合nginx使用小结
查看>>
数据库结构演变
查看>>
国内主要视频网站的网页视频嵌入方式
查看>>
为什么要使用 99+,记一次 sql 优化(消息数量显示优化)
查看>>
去中心化的三个维度
查看>>
一个经过优化的微服务架构案例
查看>>
对一个准程序员的忠告
查看>>
团队开发中预防Bug的一些经验
查看>>
花式破解人脸识别技术的5种方法
查看>>
使用微软人脸API实现人脸识别(java的URL方式)
查看>>
人脸识别几个解决方案分析与测评
查看>>
如何在自定义Listener(监听器)中使用Spring容器管理的bean
查看>>
运维DBA规范(4大纪律9项注意)
查看>>