MST

星途 面试题库

面试题:消息队列Kafka在与Spring集成时,常见的配置参数有哪些及各自作用

在Spring项目中集成Kafka进行后端开发,需要对Kafka进行一些配置。请列举至少三个常见的配置参数,并简要说明它们在Kafka与Spring集成场景下的作用。
30.9万 热度难度
后端开发消息队列

知识考点

AI 面试

面试题答案

一键面试
  • bootstrap.servers:指定Kafka集群的地址列表,Spring应用通过此参数连接到Kafka集群,格式为host1:port1,host2:port2等。例如 bootstrap.servers=kafka1.example.com:9092,kafka2.example.com:9092,用于建立与Kafka集群的初始连接。
  • key.serializervalue.serializer:分别用于指定消息的键和值的序列化器。在Spring与Kafka集成中,消息发送到Kafka前需进行序列化。常见的如 key.serializer=org.apache.kafka.common.serialization.StringSerializervalue.serializer=org.apache.kafka.common.serialization.StringSerializer,如果消息的键或值为自定义对象,需使用自定义的序列化器,以确保消息能正确在网络中传输。
  • group.id:消费者组ID,在Spring的Kafka消费者配置中很关键。同一消费者组内的消费者共同消费主题中的分区,每个分区只会被组内一个消费者消费。比如多个消费者都设置 group.id=myGroup,它们会形成一个消费者组,共同处理主题消息,有助于负载均衡和保证消息不重复消费。
  • auto.offset.reset:当消费者的偏移量(offset)无效时(如初次消费或偏移量超出范围),该参数决定如何重置偏移量。常见值有 earliest(从最早的消息开始消费)、latest(从最新的消息开始消费,默认值)。在Spring与Kafka集成时,可根据业务需求设置此参数,例如对于实时性要求高且允许错过历史消息的场景,可设置为 latest