Kafka生产者配置分为必填参数和非必填参数,具体如下:
bootstrap.servers:指定连接Kafka集群的broker地址列表,格式为host1:port1,host2:port2,至少配置一个。key.serializer:指定消息键的序列化器,需为字节数组,如org.apache.kafka.common.serialization.StringSerializer。value.serializer:指定消息值的序列化器,需为字节数组,如org.apache.kafka.common.serialization.StringSerializer。acks:指定消息确认机制,0(不等待确认,吞吐量高但可能丢失)、1(等待leader确认,默认)、-1/all(等待所有副本确认,可靠性最高)。retries:消息发送失败时的重试次数,默认0。batch.size:批量发送消息的缓冲区大小,默认16KB,可提高吞吐量。linger.ms:等待更多消息加入批次的时间,默认0,增大可提升吞吐量但增加延迟。buffer.memory:生产者缓冲区大小,默认32MB,用于暂存未发送的消息。compression.type:消息压缩类型,可选none、gzip、snappy等,默认none。client.id:客户端标识,用于追踪请求,默认自动生成producer-1等。partitioner.class:自定义分区器,默认按key的哈希值分区。interceptor.classes:消息拦截器,用于在发送前对消息进行处理。更多参数可参考官方文档,如max.request.size(限制单条消息最大值)、request.timeout.ms(请求超时时间)等。