面试题答案
一键面试关键参数及影响
bootstrap.servers
- 说明:指定Kafka集群的初始连接点,格式为
host1:port1,host2:port2
。 - 影响:数据同步客户端通过该参数找到Kafka集群,若配置错误,客户端无法连接到集群,数据同步无法进行。
- 说明:指定Kafka集群的初始连接点,格式为
group.id
- 说明:消费者组的标识,同一组内的消费者共同消费主题中的消息。
- 影响:在数据同步场景中,如果多个同步任务属于同一消费者组,它们会均衡消费消息,确保不重复同步。若不同步任务使用相同
group.id
,可能导致数据同步重复或部分数据未同步。
topic
- 说明:消息发布和订阅的主题,数据同步时,数据会发布到指定主题,同步任务从该主题订阅消息。
- 影响:正确配置主题是确保数据同步到正确目的地的关键。若主题配置错误,数据可能被同步到错误的地方,或者无法被同步任务获取。
acks
- 说明:生产者发送消息时,等待服务器响应的级别。
acks=0
表示生产者不等待任何确认;acks=1
表示生产者等待Leader副本确认;acks=all
或acks=-1
表示生产者等待所有同步副本确认。 - 影响:在数据同步中,若
acks=0
,数据发送速度快但可能丢失;acks=1
能保证Leader副本接收,但Leader副本故障时可能丢失数据;acks=all
能最大程度保证数据不丢失,但可能影响同步性能。
- 说明:生产者发送消息时,等待服务器响应的级别。
retries
- 说明:生产者发送消息失败时的重试次数。
- 影响:在数据同步过程中,网络波动等原因可能导致消息发送失败,适当设置重试次数可提高数据同步的成功率。若重试次数设置过小,可能因偶尔的网络问题导致数据同步失败。
auto.offset.reset
- 说明:消费者在没有初始偏移量或偏移量无效时的处理策略,有
earliest
(从最早的消息开始消费)、latest
(从最新的消息开始消费)等选项。 - 影响:在数据同步场景中,如果选择
earliest
,可能会重复同步历史数据;选择latest
,可能会错过部分数据,需要根据数据同步的需求合理选择。
- 说明:消费者在没有初始偏移量或偏移量无效时的处理策略,有