当前位置:   article > 正文

(翻译)Apache Kafka 官方文档:Consumer 配置_java kafka consumer文档

java kafka consumer文档

消费者配置

NAMEDESCRIPTIONTYPEDEFAULTVALID VALUESIMPORTANCE
bootstrap.servershost/port,用于和kafka集群建立初始化连接。因为这些服务器地址仅用于初始化连接,并通过现有配置的来发现全部的kafka集群成员(集群随时会变化),所以此列表不需要包含完整的集群地址(但尽量多配置几个,以防止配置的服务器宕机)。listhigh
key.deserializerkey的解析序列化接口实现类(Deserializer)。classhigh
value.deserializervalue的解析序列化接口实现类(Deserializer)classhigh
fetch.min.bytes服务器哦拉取请求返回的最小数据量,如果数据不足,请求将等待数据积累。默认设置为1字节,表示只要单个字节的数据可用或者读取等待请求超时,就会应答读取请求。将此值设置的越大将导致服务器等待数据累积的越长,这可能以一些额外延迟为代价提高服务器吞吐量。int1[0,...]high
group.id此消费者所属消费者组的唯一标识。如果消费者用于订阅或offset管理策略的组管理功能,则此属性是必须的。string""high
heartbeat.interval.ms当使用Kafka的分组管理功能时,心跳到消费者协调器之间的预计时间。心跳用于确保消费者的会话保持活动状态,并当有新消费者加入或离开组时方便重新平衡。该值必须必比session.timeout.ms小,通常不高于1/3。它可以调整的更低,以控制正常重新平衡的预期时间。int3000high
max.partition.fetch.bytes服务器将返回每个分区的最大数据量。如果拉取的第一个非空分区中第一个消息大于此限制,则仍然会返回消息,以确保消费者可以正常的工作。broker接受的最大消息大小通过message.max.bytes(broker config)或max.message.bytes (topic config)定义。参阅fetch.max.bytes以限制消费者请求大小。int1048576[0,...]high
session.timeout.ms用于发现消费者故障的超时时间。消费者周期性的发送心跳到broker,表示其还活着。如果会话超时期满之前没有收到心跳,那么broker将从分组中移除消费者,并启动重新平衡。请注意,该值必须在broker配置的group.min.session.timeout.msgroup.max.session.timeout.ms允许的范围内。int10000high
ssl.key.password密钥存储文件中的私钥的密码。 客户端可选passwordnullhigh
ssl.keystore.location密钥存储文件的位置, 这对于客户端是可选的,并且可以用于客户端的双向认证。stringnullhigh
ssl.keystore.password密钥仓库文件的仓库密码。客户端可选,只有ssl.keystore.location配置了才需要。passwordnullhigh
ssl.truststore.location信任仓库文件的位置stringnullhigh
ssl.truststore.password信任仓库文件的密码passwordnullhigh
auto.offset.reset当Kafka中没有初始offset或如果当前的offset不存在时(例如,该数据被删除了),该怎么办。
最早:自动将偏移重置为最早的偏移
最新:自动将偏移重置为最新偏移
none:如果消费者组找到之前的offset,则向消费者抛出异常
其他:抛出异常给消费者。
stringlatest[latest, earliest, none]medium
connections.max.idle.ms指定在多少毫秒之后关闭闲置的连接long540000medium
enable.auto.commit如果为true,消费者的offset将在后台周期性的提交booleantruemedium
exclude.internal.topics内部topic的记录(如偏移量)是否应向消费者公开。如果设置为true,则从内部topic接受记录的唯一方法是订阅它。booleantruemedium
fetch.max.bytes服务器为拉取请求返回的最大数据值。这不是绝对的最大值,如果在第一次非空分区拉取的第一条消息大于该值,该消息将仍然返回,以确保消费者继续工作。接收的最大消息大小通过message.max.bytes (broker config) 或 max.message.bytes (topic config)定义。注意,消费者是并行执行多个提取的。int52428800[0,...]medium
max.poll.interval.ms使用消费者组管理时poll()调用之间的最大延迟。消费者在获取更多记录之前可以空闲的时间量的上限。如果此超时时间期满之前poll()没有调用,则消费者被视为失败,并且分组将重新平衡,以便将分区重新分配给别的成员。int300000[1,...]medium
max.poll.records在单次调用poll()中返回的最大记录数。int500[1,...]medium
partition.assignment.strategy当使用组管理时,客户端将使用分区分配策略的类名来分配消费者实例之间的分区所有权listclass org.apache.kafka
.clients.consumer
.RangeAssignor
medium
receive.buffer.bytes读取数据时使用的TCP接收缓冲区(SO_RCVBUF)的大小。 如果值为-1,则将使用OS默认值。int65536[-1,...]medium
request.timeout.ms配置控制客户端等待请求响应的最长时间。 如果在超时之前未收到响应,客户端将在必要时重新发送请求,如果重试耗尽则客户端将重新发送请求。int305000[0,...]medium
sasl.jaas.configJAAS配置文件中SASL连接登录上下文参数。 这里描述JAAS配置文件格式。 该值的格式为: '(=)*;'passwordnullmedium
sasl.kerberos.service.nameKafka运行Kerberos principal名。可以在Kafka的JAAS配置文件或在Kafka的配置文件中定义。stringnullmedium
sasl.mechanism用于客户端连接的SASL机制。安全提供者可用的机制。GSSAPI是默认机制。stringGSSAPImedium
security.protocol用于与broker通讯的协议。 有效值为:PLAINTEXT,SSL,SASL_PLAINTEXT,SASL_SSL。stringPLAINTEXTmedium
send.buffer.bytes发送数据时要使用的TCP发送缓冲区(SO_SNDBUF)的大小。 如果值为-1,则将使用OS默认值。int131072[-1,...]medium
ssl.enabled.protocols启用SSL连接的协议列表。listTLSv1.2,TLSv1.1,TLSv1medium
ssl.keystore.typekey仓库文件的文件格式,客户端可选。stringJKSmedium
ssl.protocol用于生成SSLContext的SSL协议。 默认设置是TLS,这对大多数情况都是适用的。 最新的JVM中的允许值为TLS,TLSv1.1和TLSv1.2。 较旧的JVM可能支持SSL,SSLv2和SSLv3,但由于已知的安全漏洞,不建议使用SSL。stringTLSmedium
ssl.provider用于SSL连接的安全提供程序的名称。 默认值是JVM的默认安全提供程序。stringnullmedium
ssl.truststore.type信任存储文件的文件格式。stringJKSmedium
auto.commit.interval.ms如果enable.auto.commit设置为true,则消费者偏移量自动提交给Kafka的频率(以毫秒为单位)。int5000[0,...]low
check.crcs自动检查CRC32记录的消耗。 这样可以确保消息发生时不会在线或磁盘损坏。 此检查增加了一些开销,因此在寻求极致性能的情况下可能会被禁用。booleantruelow
client.id在发出请求时传递给服务器的id字符串。 这样做的目的是通过允许将逻辑应用程序名称包含在服务器端请求日志记录中,来跟踪ip/port的请求源。string""low
fetch.max.wait.ms如果没有足够的数据满足fetch.min.bytes,服务器将在接收到提取请求之前阻止的最大时间。int500[0,...]low
interceptor.classes用作拦截器的类的列表。 你可实现ConsumerInterceptor接口以允许拦截(也可能变化)消费者接收的记录。 默认情况下,没有拦截器。listnulllow
metadata.max.age.ms在一定时间段之后(以毫秒为单位的),强制更新元数据,即使没有任何分区领导变化,任何新的broker或分区。long300000[0,...]low
metric.reporters用作度量记录员类的列表。实现MetricReporter接口以允许插入通知新的度量创建的类。JmxReporter始终包含在注册JMX统计信息中。list""low
metrics.num.samples保持的样本数以计算度量。int2[1,...]low
metrics.recording.level最高的记录级别。stringINFO[INFO, DEBUG]low
metrics.sample.window.msThe window of time a metrics sample is computed over.long30000[0,...]low
reconnect.backoff.ms尝试重新连接指定主机之前等待的时间,避免频繁的连接主机,这种机制适用于消费者向broker发送的所有请求。long50[0,...]low
retry.backoff.ms尝试重新发送失败的请求到指定topic分区之前的等待时间。避免在某些故障情况下,频繁的重复发送。long100[0,...]low
sasl.kerberos.kinit.cmd Kerberoskinit命令路径。string/usr/bin/kinitlow
sasl.kerberos.min.time.before.relogin尝试/恢复之间的登录线程的休眠时间。long60000low
sasl.kerberos.ticket.renew.jitter添加到更新时间的随机抖动百分比。double0.05low
sasl.kerberos.ticket.renew.window.factor登录线程将休眠,直到从上次刷新到ticket的指定的时间窗口因子到期,此时将尝试续订ticket。double0.8low
ssl.cipher.suites密码套件列表,用于TLS或SSL网络协议的安全设置,认证,加密,MAC和密钥交换算法的明明组合。默认情况下,支持所有可用的密码套件。listnulllow
ssl.endpoint.identification.algorithm使用服务器证书验证服务器主机名的端点识别算法。stringnulllow
ssl.keymanager.algorithm密钥管理器工厂用于SSL连接的算法。 默认值是为Java虚拟机配置的密钥管理器工厂算法。stringSunX509low
ssl.secure.random.implementation用于SSL加密操作的SecureRandom PRNG实现。stringnulllow
ssl.trustmanager.algorithm信任管理器工厂用于SSL连接的算法。 默认值是为Java虚拟机配置的信任管理器工厂算法。stringPKIXlow
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/813204
推荐阅读
相关标签
  

闽ICP备14008679号