该文档对应的是 kafka安装目录/config/consumer.properties文件的内容,此份配置是老版本的kafka。由于原英文版的文档从句太多太难理解,我花了四天时间翻译了一份中文文档,希望给大家带来帮助,有问题请留言。可能网页显示不全,请下载附件PDF。
名称 |
默认 |
描述 |
group.id |
|
标识该消费者所属的消费者进程组的唯一性字符串。多个进程通过设置同一个组标识,表示它们都是同一个消费组的一部分。 |
zookeeper.connect |
|
指定ZooKeeper的连接字符串,以主机名:端口作为格式,主机名和端口是ZooKeeper服务器的主机名和端口。为了允许当ZooKeeper机器关闭时连接到其它的ZooKeeper节点你可以指定多个主机,格式为hostname1:port1,hostname2:port2,hostname3:port3 。服务器也可以有一个ZooKeeper可改变的路径作为ZooKeeper连接字符串的的一部份,将数据放在全局的ZooKeeper命名空间的一些路径中。如果这样消费者应该在它的连接路径中使用相同的可改变的路径。例如给出/chroot/path的一个可变路径,你可以给出这样的连接字符串
hostname1:port1,hostname2:port2,hostname3:port3/chroot/path 。 |
consumer.id |
null |
如果没有被设置,会自动创建。 |
socket.timeout.ms |
30 * 1000 |
网络请求套接字超时。实际的超时设置为max.fetch.wait + socket.timeout.ms。 |
socket.receive.buffer.bytes |
64 * 1024 |
网络请求的套接字接收缓冲。 |
fetch.message.max.bytes |
1024 * 1024 |
在每个读取请求中每个主题分区尝试读取的消息字节数量。为每个分区把字节读到内存中,所以这个帮助控制消费者使用的内存。获取请求大小必须至少与服务器允许的最大消息大小一样大,否则生产者就可以发送比用户能获取的更大的消息。 |
num.consumer.fetchers |
1 |
用来读取数据的读取器线程数量。 |
auto.commit.enable |
TRUE |
如果设为true,周期性的提交被消费者读取的消息偏移量到ZooKeeper。当进程失败时这个已提交的偏移将被使用,作为新的消费者开始的位置。 |
auto.commit.interval.ms |
60 * 1000 |
消费者偏移被提交到zookeeper的频率,以毫秒为单位。 |
queued.max.message.chunks |
2 |
消费的缓冲消息块的数量。每个块可以达到fetch.message.max.bytes |
rebalance.max.retries |
4 |
当一个新消费者加入一个消费者组,消费者集合尝试重平衡负载来分配分区给每个消费者。当这个分配正在发生时如果消费者集合改变了,重平衡会失败并重试。此设置控制在放弃之前最多尝试次数。 |
fetch.min.bytes |
1 |
服务器为每个读取请求返回的数据的最小数量。如果没有足够的数据可用,在响应之前请求会等待有足够的数据。 |
fetch.wait.max.ms |
100 |
如果没有足够的数据立即满足fetch.min.bytes的值,时间服务器在响应读取请求之前服务器阻塞的最大时间。 |
rebalance.backoff.ms |
2000 |
在重新平衡期间重试之间的延迟时间。如果没有显式设置,用zookeeper.sync.time.ms的值。 |
refresh.leader.backoff.ms |
200 |
在确定一个刚刚失去领导者的分区的领导者之前,需要等待的时间。 |
auto.offset.reset |
largest |
当在ZooKeeper中没有初始的偏移或偏移已超出范围:* smallest : 自动重置偏移到最小偏移 * anything else: 抛出一个异常给消费者 |
consumer.timeout.ms |
-1 |
抛出一个超时异常给消费者,如果在指定的间隔内没有没有可用的消息。 |
exclude.internal.topics |
TRUE |
来自内部主题(例如偏移)的消息是否暴露给消费者。 |
client.id |
group id value |
用户标识是用户指定的字符,在每次请求发送时用于追踪调用。它应该可以逻辑上区分应用请求。 |
zookeeper.session.timeout.ms |
6000 |
ZooKeeper 会话超时时间。如果在这个周期内消费者到ZooKeeper之间的心跳失败,那么它被认为是死亡的并且会发生重新平衡。
|
zookeeper.connection.timeout.ms |
6000 |
客户端建立到zookeeper之间连接等待的最长时间。 |
zookeeper.sync.time.ms |
2000 |
Zookeeper的跟随者在Zookeeper领导者之后的距离。 |
offsets.storage |
zookeeper |
选择偏移所保存的地方,(zookeeper 或 kafka)。 |
offsets.channel.backoff.ms |
1000 |
重新连接偏移渠道或试失败的偏移提取/提交请求的回退周期。 |
offsets.channel.socket.timeout.ms |
10000 |
为偏移读/提交请求读取响应的超时时间。这个超时也用于用来偏移管理请求的ConsumerMetadata请求。 |
offsets.commit.max.retries |
5 |
重试失败的偏移提交一直达到这个属性值的大小。这个重试计数只适用于在关闭期间的偏移提交。它不适用于自动提交线程的提交。它也不适用于在提交偏移之前查询偏移协调器的尝试。例如,如果一个消费者元数据请求因任何原因而失败,它将重试,重试不计入该限制。 |
dual.commit.enabled |
TRUE |
如果你使用"kafka" 作为offsets.storage的值,你可以提交两次偏移到ZooKeeper(除了kafka外)。这是在从zookeeper-based 偏移存储升级到 to kafka-based 偏移存储期间所必须的。对于任何给定的消费者组,在那个组里的所有实例升级到提交偏移到broker(取代直接到ZooKeeper)的新版本之后关闭它,这样才是安全的。 |
partition.assignment.strategy |
range |
在"range" 或 “roundrobin”策略之间选择用来分配分区给消费者流。循环赛分区分配器展示了所有的可用的分区和所有可用的消费者线程。然后从分区到用户进行循环赛分配。如果所有用户的订阅都是可识别的,分区将会统一分发。(分区所有者计数值将会是所有消费者线程中的一个具体的变量)。循环赛分配只有在以下条件下允许:(a)在一个消费者实例中每个主题都有相同的流数字。(b)订阅主题的集合对于组里每个消费者来说是可识别的。范围分区是基于每个主题。对于每个主题,我们按数字顺序展示了可用的分区并且按字典顺序勾画了消费者线程。然后,我们根据消费者流(线程)的总数来划分分区的数量,以确定分配给每个消费者的分区数。如果它不均匀地分配,那么头几个消费者将有一个额外的分区。 |
相关推荐
以下是根据提供的文件内容整理的Kafka生产者配置参数的知识点: 1. bootstrap.servers - 用途:配置生产者连接到Kafka集群的初始主机列表。 - 描述:这个列表只需包含一个或多个服务器,用于初始化连接和发现整个...
Apache Kafka是一个分布式流处理平台,它具备三个...综合来看,这份Kafka官方中文文档提供了一套全面的知识体系,详细介绍了Kafka的架构、使用、配置、操作和安全等各方面知识,是理解和掌握Kafka技术的重要参考文献。
Apache Kafka 官方文档中文版
对于Kafka的Topic配置参数,下面将详细讲解一些重要的参数。 1. cleanup.policy 这个参数用于指定日志段的清理策略。它接受"delete"或者"compact"作为值,分别表示删除策略和压缩策略。默认值为"delete",表示日志...
从这些内容来看,spring-kafka整合官方文档提供了全面的信息,涵盖了从基础的Kafka配置和消息处理,到复杂的事务管理和错误处理机制,再到Kafka Streams的支持。它旨在帮助开发者利用Spring的强大功能,简化Kafka在...
在配置方面,文档详细解析了Kafka集群的设置,如broker配置、日志管理、网络参数等,帮助管理员优化Kafka的性能和稳定性。此外,还涵盖了如何配置生产者和消费者,确保高效的数据传输和消费。 文档中还涵盖了Kafka...
【正文】 Kafka是一款高效的消息中间件,常用于大数据实时处理和流计算场景。本篇文档将详细介绍如何在Linux环境中搭建Kafka集群,同时结合...同时,通过合理配置参数,可以优化Kafka的性能,满足不同业务场景的需求。
KafkaConsumer的API和配置细节可以参考KafkaConsumer相关文档。消费者的迭代器会返回ConsumerRecords,这是简单命名元组,用于暴露基本消息属性,如topic、partition等。 开发者在使用kafka-python时需要注意版本...
Kafka参数配置详解 Kafka是一种流行的分布式流处理平台,用于构建实时数据管道和事件驱动的架构。为了确保Kafka集群的稳定运行和高性能,需要正确地配置Kafka参数。本文将详细介绍Kafka的参数配置,包括系统参数、...
在实际应用中,Kafka消费者需要配置与Kafka集群的连接参数,如broker地址、消费者组ID等。同时,为了运行此C++消费者,还需要确保protobuf和avro库已经正确安装,并添加到项目构建路径中。 总结来说,“kafka_...
标签:11、apache、kafka、kafka_2、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...
Kafka是一个非常复杂且功能丰富的系统,上述只是对Kafka中文文档内容的一小部分概述。在实际使用过程中,需要根据实际场景进行详细的学习和配置,才能充分发挥Kafka在消息队列和事件流处理中的巨大优势。
### Kafka中文文档核心知识点 #### 一、Kafka概述 **Kafka** 是一款由 **Apache** 开发的开源流处理平台,它提供了一个统一、高吞吐量、低延迟的发布/订阅消息系统,特别适合处理实时数据流。Kafka 的设计灵感来源...
Kafka自学文档详细介绍了Apache Kafka,...文档覆盖了Kafka的基本概念、设计原理、主要配置选项、集群搭建方法以及消息传输机制等关键知识点。掌握了这些内容,可以让开发者更好地利用Kafka进行实时数据处理和流计算。
主题配置涉及到分区数量、副本因子等参数,如 `num.partitions`(分区数)、`replication.factor`(副本因子)等。 #### 3.3 Producer Configs 生产者配置主要包括消息发送策略、缓冲区大小等,如 `acks`(确认机制...
总的来说,Kafka文档中所涵盖的知识点非常丰富,既包括了Kafka的设计原理和架构细节,也包括了API使用和配置指导,以及大量的实际应用场景和案例分析。这些知识点为使用和管理Kafka集群提供了全面的理论基础和技术...
Kafka 配置调优实践是指通过调整 Kafka 集群的参数配置来提高其吞吐性能。下面是 Kafka 配置调优实践的知识点总结: 一、存储优化 * 数据目录优先存储到 XFS 文件系统或者 EXT4,避免使用 EXT3。 * 在挂载块设备时...