spring kafka 参数说明

如题所述

第1个回答  2022-06-05
# kafka

spring.kafka.bootstrap-servers=10.125.70.41:9092,10.125.70.35:9092,10.125.70.36:9092

#client-id

spring.kafka.client-id=group1

生产者参数

# acks=0 : 生产者在成功写入消息之前不会等待任何来自服务器的响应。

# acks=1 : 只要集群的首领节点收到消息,生产者就会收到一个来自服务器成功响应。

# acks=all :只有当所有参与复制的节点全部收到消息时,生产者才会收到一个来自服务器的成功响应

spring.kafka.producer.acks=1

#当有多个消息需要被发送到同一个分区时,生产者会把它们放在同一个批次里。该参数指定了一个批次可以使用的内存大小,按照字节数计算。

spring.kafka.producer.batch-size=16384

# 发生错误后,消息重发的次数。

spring.kafka.producer.retries=3

# 设置生产者内存缓冲区的大小。

spring.kafka.producer.buffer-memory=33554432

spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer

spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer

消费者参数

# 自动提交的时间间隔

spring.kafka.consumer.auto-commit-interval=1000

# offset的消费位置

spring.kafka.consumer.auto-offset-reset=latest

# 是否自动提交

spring.kafka.consumer.enable-auto-commit=false

# 最大拉取间隔时间

spring.kafka.consumer.max.poll.interval.ms =600000

# 会话超时时间

spring.kafka.consumer.session.timeout.ms =10000

spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer

spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer

# 消费组名称

spring.kafka.consumer.groupId=dmsdecision

# 最大拉取条数

spring.kafka.consumer.max-poll-records=30

# 心跳时间

spring.kafka.consumer.heartbeat-interval=3000

# kafka spring.kafka.properties.parsefileContainerFactory_concurrency监听线程数未设置时,本参数生效

spring.kafka.listener.concurrency=30

#MANUAL 当每一批poll()的数据被消费者监听器(ListenerConsumer)处理之后, 手动调用Acknowledgment.acknowledge()后提交

#MANUAL_IMMEDIATE 手动调用Acknowledgment.acknowledge()后立即提交

#RECORD 当每一条记录被消费者监听器(ListenerConsumer)处理之后提交

#BATCH 当每一批poll()的数据被消费者监听器(ListenerConsumer)处理之后提交

#TIME 当每一批poll()的数据被消费者监听器(ListenerConsumer)处理之后,距离上次提交时间大于TIME时提交

#COUNT 当每一批poll()的数据被消费者监听器(ListenerConsumer)处理之后,被处理record数量大于等于COUNT时提交

#COUNT_TIME TIME或COUNT 有一个条件满足时提交

# ack_mode为COUNT/COUNT_TIME 时配置

spring.kafka.listener.ack-mode=manual_immediate

# ack_mode为COUNT/COUNT_TIME 时配置

spring.kafka.listener.ack-count=

# ack_mode为/COUNT_TIME 时配置

spring.kafka.listener.ack-time=

# poll拉取数据超时时间

spring.kafka.listener.poll-timeout=
相似回答