版本:0.10.0.0
https://kafka.apache.org/0100/documentation.html
bootstrap.servers:连接broker的ip和port
key.serializer
value.serializer
acks:[all, -1, 0, 1]
0:不等写入就可以返回
1:只写leader本地就可以返回
-1:写入min.insync.replicas数才返回
buffer.memory
compression.type 压缩类型
retries:重试次数
batch.size:sender发一次请求最大字节数。达到大小则开始发送
linger.ms:sender线程发送请求的时间间隔
client.id:客户端唯一id 用于定位问题
connections.max.idle.ms
max.block.ms:send和partitionsFor函数最大block时间(有可能sender队列已经满了,或者meta数据已经过期了,导致无法发送)
max.request.size:一次请求最大字节数
partitioner.class:定义对消息Key分区的类
receive.buffer.bytes:
request.timeout.ms:客户端侧超时时长
timeout.ms:当设置了ack=-1时,leader等待follower返回的最长时间,这个是服务端限制的时间,不包括网络时长
send.buffer.bytes
block.on.buffer.full:当缓冲区满时无法发送数据时是否block
interceptor.classes:拦截器的类
max.in.flight.requests.per.connection:最大同时允许produce请求数,如果设置为1,相当于kafka是同步的。但是设置为1以上,可以增加吞吐量,但是可能会乱序(当发生重试)。
metadata.fetch.timeout.ms:元数据获取超时时间
metadata.max.age.ms:元数据过期时间
reconnect.backoff.ms:重新连接时超时时间
retry.backoff.ms:向broker发送数据失败后的重试间隔时间