kafka:
bootstrap-servers: 127.0.0.1:9092#配置broker的地址,broker就是cs架构的s
producer:#生产者配置
#消息键key的序列化器: 字符串序列化器
key-serializer: org.apache.kafka.common.serialization.StringSerializer
#消息值value的序列化器: 字符串序列化器
value-serializer: org.apache.kafka.common.serialization.StringSerializer
retries:0 # 消息发送失败重试次数: 0
acks: 1#生产者的确认模式, '1'表示生产者leader partition接收到后就会返回插入成功
properties:#属性配置
linger.ms: 0# 消息立即发出,不管批次是否填满, 除非这条消息来了刚好填满, 会带上刚好要来的那条
consumer:#消费者配置
group-id: group-operator-05#消费者组id,把消费者进行分组的组id
auto-offset-reset:latest #偏移量没有或被删了, 则从最新的消息开始消费
enable-auto-commit:true # 是否开启自动提交偏移量的功能
auto-commit-interval: 2000#自动提交偏移量的时间间隔为2000,单位是毫秒
max-poll-records:20 # 单次调用poll方法返回的最大记录数, 每次最多只拉取20条消息
#心跳检测间隔时间为3000,单位是毫秒,心跳是消费者向broker的消费组协调者container汇报活着情况,
# 这个是为了方便 把同一个topic下的不同partition只非配给同一个消费组的的多个消费者中的一个,
# 避免重复消费, 只要该消费者还活着, 分配给它的partition就还属于它
heartbeat-interval: 3000
key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
properties:#属性配置
#和心跳检测相配合, 如果一个消费者挂了, 那么最多再汇报60秒, 就会被container踢出分配名单
session.timeout.ms: 60000
# 同上
heartbeat.interval.ms: 3000
# 调用poll的最大间隔时间, 超过则认为该消费者挂了
max.poll.interval.ms: 300000
# 请求最大超时
request.timeout.ms: 600000
listener:# 监听配置
concurrency:5 # 并发数, 即同时运行的消费者数
type:single #监听器类型single, 表示每个分区只有一个线程处理消息
ack-mode:record #一种确认模式,record表示每条记录都会被确认,也就是会发消息给broker我消费了
#如果监听的主题不存在,是否视为致命错误。如果设置为false,则不会因为主题缺失而抛出异常。
missing-topics-fatal:false