0
点赞
收藏
分享

微信扫一扫

【Kafka】Kafka官网翻译 kafka 实现 网络层 消息协议

查拉图斯特拉你和他 2022-03-12 阅读 82

在这里插入图片描述

1.概述

翻译:官网实现

5. 实现

5.1 网络层

网络层是一个非常简单的NIO服务器,这里不会详细描述。sendfile实现是通过给MessageSet接口一个writeTo方法来完成的。这允许文件支持的消息集使用更高效的transferTo实现,而不是进程内缓冲写。线程模型是一个单一的接受线程和N个处理器线程,每个线程处理固定数量的连接。这个设计已经在其他地方进行了相当彻底的测试,并且发现易于实现和快速。协议保持得相当简单,以便将来用其他语言实现客户端。

5.2信息

消息由一个变长报头、一个变长不透明键字节数组和一个变长不透明值字节数组组成。报头的格式将在下一节中描述。让键和值不透明是正确的决定:目前在序列化库方面已经取得了很大的进展,任何特定的选择都不太可能适用于所有的用途。不用说,使用Kafka的特定应用程序可能会强制使用特定的序列化类型作为其使用的一部分。RecordBatch接口只是一个消息的迭代器,该迭代器具有专门的方法,用于对NIO Channel进行批量读写。

5.3 消息格式

消息(又名记录)总是批

举报

相关推荐

0 条评论