kafak配置说明

spring:
  kafka:
    bootstrap-servers: 112.126.74.249:9092,112.126.74.249:9093
    ###########【初始化生产者配置】###########
    producer:
      # 应答级别:多少个分区副本备份完成时向生产者发送ack确认(可选0、1、all/-1)
      acks: 1
      # 生产端缓冲区大小
      buffer-memory: 33554432
      # Kafka提供的序列化和反序列化类
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer
      # 重试次数
      retries: 0
      # 批量大小
      batch-size: 16384
      properties:
        linger:
          # 当生产端积累的消息达到batch-size或接收到消息linger.ms后,生产者就会将消息提交给kafka
          # linger.ms为0表示每接收到一条消息就提交给kafka,这时候batch-size其实就没用了
          # 提交延时
          ms: 0

    ###########【初始化消费者配置】###########
    consumer:
      auto:
        commit:
          interval:
            # 提交offset延时(接收到消息后多久提交offset)
            ms: 1000
      # 当kafka中没有初始offset或offset超出范围时将自动重置offset
      # earliest:重置为分区中最小的offset;
      # latest:重置为分区中最新的offset(消费分区中新产生的数据);
      # none:只要有一个分区不存在已提交的offset,就抛出异常;
      auto-offset-reset: latest
      # 是否自动提交offset
      enable-auto-commit: true
      # Kafka提供的序列化和反序列化类
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      # 批量消费每次最多消费多少条消息
#      max-poll-records: 50
      properties:
        group:
          # 默认的消费组ID
          id: defaultConsumerGroup
        request:
          timeout:
            # 消费请求超时时间
            ms: 180000
        session:
          timeout:
            # 消费会话超时时间(超过这个时间consumer没有发送心跳,就会触发rebalance操作)
            ms: 120000
    listener:
      # 消费端监听的topic不存在时,项目启动会报错(关掉)
      missing-topics-fatal: false
      # 设置批量消费,在上面(max-poll-records)设置了每次消费了多少条
#      type: batch

  

posted @ 2021-04-19 18:15  史安良  阅读(76)  评论(0编辑  收藏  举报