Kafka通讯协议指南
中英文术语对照
为避免歧义,大部分的英文术语不到合适中文对应时都保持英文原文,Kafka中一些基本术语也使用英文,其中一部分通过括号加入英文原文;另外,文中可能使用到的中英文术语包括但不限于:
英文
中文
Metadata
元数据
offset
偏移量
Comsumer
消费者
kafka最新版本Comsumer Group
消费者组
Topic
主题
API
接口
Coordinator
协调器
1 简介
此文档涵盖了Kafka 0.8及之前版本的通讯协议实现。其目的是提供一个包含的可请求的协议及其二进制格式以及如何正确使用他们来实现一个客户端的通讯协议文档。本文假设您已经了解了Kafka基本的设计以及术语。
0.7和更早的版本所使用的协议与此类似,但我们(希望)通过一次性地斩断兼容性,以便清理原有设计上的沉疴,并且泛化一些概念。
如果遇到无法理解的情况,请参照英文原文
2 概述
卡夫卡协议是相当简单的,只有六个核心的客户端请求的API:
1.元数据(Metadata) – 描述可用的brokers,包括他们的主机和端口信息,并给出了每个broker上分别存有哪些分区;
2.发送(Send) – 发送消息到broker;
3.获取(Fetch) – 从broker获取消息,其中,一个获取数据,一个获取集的元数据,还有一个获取topic的偏移量信息;
4.偏移量(Offsets) – 获取给定topic的分区的可用偏移量信息;
5.偏移量提交(Offset Commit) – 提交消费者组(Comsumer Group)的一组偏移量;
6.偏移量获取(Offset Fetch) – 获取一个消费者组的一组偏移量;
上述的API都将在下面详细说明。此外,从0.9版本开始,Kafka支持为消费者和Kafka连接进行分组管理。客户端API包括五个请求:
1.分组协调者(GroupCoordinator) – 用来定位一个分组当前的协调者。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。