bootstrap.servers:Kafka broker服务器地址列表,,
分开,可不必写全,Kafka内部有自动感知Kafka broker的机制
client.dns.lookup:客户端寻找bootstrap地址的方式,支持两种方式:
compression.type:消息压缩算法,可选值:none、gzip、snappy、lz4、zstd,默认不压缩,建议与Kafka服务器配置的一样,当然Kafka服务端可配置的压缩类型为 producer,即采用与发送方配置的压缩类型。发送方与Broker 服务器采用相同的压缩类型,可有效避免在Broker服务端进行消息的压缩与解压缩,大大降低Broker的CPU使用压力。
client.id:客户端ID,如果不设置默认为producer-递增,强烈建议设置该值,尽量包含ip,port,pid
send.buffer.bytes:网络通道(TCP)的发送缓存区大小,默认128K
receive.buffer.bytes:网络通道(TCP)的接收缓存区大小,默认32K
reconnect.backoff.ms:重新建立链接的等待时长,默认50ms,属于底层网络参数,基本不关注
reconnect.backoff.max.ms:重建链接的最大等待时长,默认1s,连续两次对同一个连接建立重连,等待时间会在reconnect.backoff.ms的初始值上成指数级递增,但超过max后,将不再指数级递增
key.serializer:消息key的序列化策略,org.apache.kafka.common.serialization接口实现类,注意别导错包了
value.serializer:消息体序列化策略
partitioner.class:消息发送队列负载算法,默认 DefaultPartitioner,路由算法如下:
interceptor.classes:拦截器列表,kafka运行在消息真正发送到broker之前对消息进行拦截加工
enable.idempotence:是否开启发送端的幂等,默认false
transaction.timeout.ms:事务协调器等待客户端的事务状态反馈的最大超时时间,默认60s
transactional.id:事务id,用于在一个事务中唯一标识一个客户端
涉及到消息发送是如何工作的,本节首先将罗列参数,做简单说明,然后再给出运作图,进一步阐述其工作机制。
到底如何指导实际业务的性能优化参数,该调哪些参数?咱们下篇文章再叙。
文章转载自公众号:JavaEdge
参考:
本文由博客一文多发平台 OpenWrite 发布!
参与评论
手机查看
返回顶部