builtin.features | * | | 指示此librdkafka构建的内置功能。应用程序可以查询此值,也可以尝试使用必需功能列表设置该值以检查是否支持库。 |
client.id | * | rdkafka | 客户标识符。 |
metadata.broker.list | * | | 经纪人的初始清单。该应用程序还可用于rd_kafka_brokers_add()在运行时添加代理。 |
bootstrap.servers | * | | 别名 metadata.broker.list |
message.max.bytes | * | 1000000 | 最大发送消息大小。 |
receive.message.max.bytes | * | 100000000 | 最大接收消息大小。这是一项安全预防措施,可避免在协议初始化时内存耗尽。该值应至少为fetch.message.max.bytes *从+消息传递开销消耗的分区数(例如200000字节)。 |
metadata.request.timeout.ms | * | 60000 | 非主题请求超时(以毫秒为单位)。这用于元数据请求等。 |
topic.metadata.refresh.interval.ms | * | 300000 | 主题元数据刷新间隔(以毫秒为单位)。错误时元数据会自动刷新并连接。使用-1禁用间隔刷新。 |
topic.metadata.refresh.fast.cnt | * | 10 | 当主题失去其领导者时,将以topic.metadata.refresh.fast.interval.ms不考虑topic.metadata.refresh.interval.ms值的时间间隔发送此数量的元数据请求。这用于从过渡的领导经纪人中快速恢复。 |
topic.metadata.refresh.fast.interval.ms | * | 250 | 见topic.metadata.refresh.fast.cnt描述 |
topic.metadata.refresh.sparse | * | true | 稀疏的元数据请求(消耗更少的网络带宽) |
topic.blacklist | * | | 主题黑名单,以逗号分隔的用于匹配主题名称的正则表达式列表,在代理元数据信息中应将其忽略,就好像主题不存在一样。 |
debug | * | | 要启用的调试上下文的逗号分隔列表:所有,通用,代理,主题,元数据,生产者,队列,msg,协议,cgrp,安全性,访存 |
socket.timeout.ms | * | 60000 | 网络请求超时。 |
socket.blocking.max.ms | * | 100 | 代理套接字操作可能阻塞的最长时间。较低的值会提高响应速度,但会占用稍高的CPU使用率。 |
socket.send.buffer.bytes | * | 0 | 代理套接字发送缓冲区的大小。如果为0,则使用系统默认值。 |
socket.receive.buffer.bytes | * | 0 | 代理套接字接收缓冲区的大小。如果为0,则使用系统默认值。 |
socket.keepalive.enable | * | false | 在代理套接字上启用TCP保持活动(SO_KEEPALIVE) |
socket.max.fails | * | 3 | 当达到此发送失败次数(例如,超时请求)时,与代理断开连接。禁用0。注意:连接将自动重新建立。 |
broker.address.ttl | * | 300000 | 缓存代理地址解析结果的时间。 |
broker.address.family | * | any | 允许的代理IP地址系列:任意,v4,v6 |
statistics.interval.ms | * | 0 | librdkafka统计信息发出间隔。应用程序还需要使用来注册统计信息回调rd_kafka_conf_set_stats_cb()。粒度为1000ms。值为0将禁用统计信息。 |
error_cb | * | | 错误回调(使用rd_kafka_conf_set_error_cb()设置) |
throttle_cb | * | | 节流回调(通过rd_kafka_conf_set_throttle_cb()设置) |
stats_cb | * | | 统计信息回调(使用rd_kafka_conf_set_stats_cb()设置) |
log_cb | * | | 日志回调(使用rd_kafka_conf_set_log_cb()设置) |
log_level | * | 6 | 日志记录级别(syslog(3)级别) |
log.thread.name | * | false | 在日志消息中打印内部线程名称(用于调试librdkafka内部) |
socket_cb | * | | 套接字创建回调以提供无竞争的CLOEXEC |
open_cb | * | | 文件打开回调以提供无竞争的CLOEXEC |
opaque | * | | 应用程序不透明(使用rd_kafka_conf_set_opaque()设置) |
default_topic_conf | * | | 自动订阅主题的默认主题配置 |
internal.termination.signal | * | 0 | 表示librdkafka将用于在rd_kafka_destroy()上快速终止。如果未设置此信号,则由于内部线程使它们的系统调用超时,因此rd_kafka_wait_destroyed()返回true 之前会有一个延迟。如果设置了该信号,则延迟将最小。当安装了内部信号处理程序时,应用程序应屏蔽此信号。 |
quota.support.enable | * | false | 为生产和获取(消费)请求启用代理的节流时间的应用程序转发。每当返回的生产或获取请求的节流时间不为零(代理节流了该请求以强制执行已配置的配额率的时间)时,就会对下一次调用进行节流_cb入队rd_kafka_poll()。对于节流请求之后的第一个非节流请求,也是如此。需要启用配额的Kafka经纪人> = 0.9.0。 |
protocol.version | * | 0 | 代理协议版本。由于客户端无法知道代理使用的协议版本,因此无法知道用于某些协议请求的API版本。此属性用于提示代理版本的客户端。格式为0xMMmmrrpp,其中MM =主要,mm =次要,rr =修订,pp =补丁,例如0.000000200代表0.8.2。版本0表示一种乐观的方法,其中客户端假定支持最新版本的API。 |
security.protocol | * | plaintext | 用于与代理(brokers)通信的协议。 |
ssl.cipher.suites | * | | 密码套件是认证,加密,MAC和密钥交换算法的命名组合,用于协商使用TLS或SSL网络协议的网络连接的安全设置。请参见手册页,ciphers(1)以及`SSL_CTX_set_cipher_list(3)。 |
ssl.key.location | * | | 客户端用于身份验证的私钥(PEM)的路径。 |
ssl.key.password | * | | 私钥密码 |
ssl.certificate.location | * | | 验证代理密钥的证书文件的路径。 |
ssl.ca.location | * | | CA证书的文件或目录路径,用于验证代理的密钥。 |
sasl.mechanisms | * | GSSAPI | 合格的SASL机制的空格分隔列表 |
sasl.kerberos.service.name | * | kafka | Kafka运行时使用的Kerberos主体名称。 |
sasl.kerberos.principal | * | kafkaclient | kafkaclient 该客户端的Kerberos主体名称。 |
sasl.kerberos.kinit.cmd | * | kinit | Kerberos kinit命令路径。 |
sasl.kerberos.keytab | * | | Kerberos keytab文件的路径。如果未设置,则使用系统默认值。 |
sasl.kerberos.min.time.before.relogin | * | 60000 | 两次按键刷新之间的最短时间(以毫秒为单位)。 |
group.id | * | | 客户端组ID字符串。共享相同group.id的所有客户端都属于同一组。 |
partition.assignment.strategy | * | range,roundrobin | 当选组长将分区分配给组成员时要使用的分区分配策略的名称。 |
session.timeout.ms | * | 30000 | 客户端组会话和故障检测超时。 |
heartbeat.interval.ms | * | 1000 | 小组会议keepalive心跳间隔。 |
group.protocol.type | * | consumer | 组协议类型 |
coordinator.query.interval.ms | * | 600000 | 查询当前客户组协调员的频率。如果当前分配的协调器关闭,则在重新分配协调器的情况下,配置的查询间隔将被除以十以更快地恢复。 |
enable.auto.commit | C | true | 自动并定期在后台提交偏移量。 |
auto.commit.interval.ms | C | 5000 | 消费者偏移量被提交(写入)到偏移量存储的频率(以毫秒为单位)。(0 =禁用) |
queued.min.messages | C | 100000 | 本地使用者队列中每个主题+分区的最小消息数。 |
queued.max.messages.kbytes | C | 1000000 | 本地使用者队列中每个主题+分区的最大千字节数。该值可能被fetch.message.max.bytes覆盖。 |
fetch.wait.max.ms | C | 100 | 代理可以等待的最长时间,以fetch.min.bytes填充响应。 |
fetch.message.max.bytes | C | 1048576 | 从代理中获取消息时,每个主题+分区要请求的最大字节数。 |
max.partition.fetch.bytes | C | | 别名 fetch.message.max.bytes |
fetch.min.bytes | C | 1 | 代理响应的最小字节数。如果fetch.wait.max.ms过期,则无论此设置如何,累积的数据都会发送到客户端。 |
fetch.error.backoff.ms | C | 500 | 万一发生提取错误,将下一个主题+分区的下一个提取请求推迟多少时间。 |
offset.store.method | C | broker | 偏移提交存储方法:‘file’-本地文件存储(offset.store.path等),‘broker’-代理提交存储(在代理上需要Apache Kafka 0.8.2或更高版本)。 |
consume_cb | C | | 消息消耗回调(使用rd_kafka_conf_set_consume_cb()设置) |
rebalance_cb | C | | 在消费组重新平衡后调用(使用rd_kafka_conf_set_rebalance_cb()设置) |
offset_commit_cb | C | | 偏移提交结果传播回调。(使用rd_kafka_conf_set_offset_commit_cb()设置) |
queue.buffering.max.messages | P | 100000 | 生产者队列上允许的最大消息数。 |
queue.buffering.max.ms | P | 1000 | 在生产者队列上缓冲数据的最长时间(以毫秒为单位)。 |
message.send.max.retries | P | 2 | 重试发送失败的MessageSet的次数。注意:重试可能会导致重新排序。 |
retry.backoff.ms | P | 100 | 重试消息发送之前的退避时间(以毫秒为单位)。 |
compression.codec | P | none | 用于压缩消息集的压缩编解码器:none,gzip或snappy |
batch.num.messages | P | 1000 | 一个MessageSet中批处理的最大消息数。 |
delivery.report.only.error | P | false | 仅提供失败消息的传递报告。 |
dr_cb | P | | 传递报告回调(使用rd_kafka_conf_set_dr_cb()设置) |
dr_msg_cb | P | | 传递报告回调(使用rd_kafka_conf_set_dr_msg_cb()设置) |