[搜狐博客搬家] 2012-07-04 jafka请求格式分析(一)

原创
2021/09/30 16:58
阅读数 66

1.请求获取消息格式(类型,英文名,中文,简介)

-->int    size            消息体长度      包括了requestKey

-->short  requestkey      请求类型        具体参考com.sohu.jafka.api.RequestKeys类

接下来根据不同的请求类型有不同的格式,以下以FetchRequest为例

-->short,bytes topic      topic的名字     short表示的是后面bytes的长度

-->int    partition       切片

-->long   offset          偏移量

-->int    maxsize         消息最大长度限制

2.返回消息

-->int    size            返回的消息体长度

-->short  ErrorMapping    错误类型

-->int    dataSize        消息大小

-->byte   version         版本

-->byte   attribute       

-->int    crc32

-->byte[dataSize] data    真实数据

3.发送消息请求格式

-->int    size            消息体长度      包括了requestKey

-->short  requestkey      请求类型        具体参考com.sohu.jafka.api.RequestKeys类

接下来根据不同的请求类型有不同的格式,以下以ProducerRequest为例

-->short,bytes topic      topic的名字     short表示的是后面bytes的长度

-->int    partition       切片

-->int    totalMessageSize     消息体总大小

-->int    messageSize      单个消息体大小

-->byte   magic            版本

-->byte   attribute

-->int    crc32

-->bytes  message          真实数据 

4.crc32加密

CRC32:对message进行crc32加密,就是上面的message

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部