Kafka 面试题——20 道 Kafka 知识点

发布于: 2020 年 06 月 29 日

本篇给大家总结了20道Kafka知识点或者说面试题,持续更新中...

1.kafka的3个关键功能?

发布和订阅记录流,类似于消息队列或企业消息传递系统。

以容错的持久方式存储记录流。

处理记录流。

2.kafka通常用于两大类应用?

建立实时流数据管道,以可靠地在系统或应用程序之间获取数据

构建实时流应用程序,以转换或响应数据流

3.kafka特性?

消息持久化

高吞吐量

扩展性

多客户端支持

Kafka Streams

安全机制

数据备份

轻量级

消息压缩

4.kafka的5个核心Api?

Producer API

Consumer API

Streams API

Connector API

Admin API

5.什么是Broker(代理)?

Kafka集群中,一个kafka实例被称为一个代理(Broker)节点。

6.什么是Producer(生产者)?

消息的生产者被称为Producer。Producer将消息发送到集群指定的主题中存储,同时也自定义算法决定将消息记录发送到哪个分区?

7.什么是Consumer(消费者)?

消息的消费者,从kafka集群中指定的主题读取消息。

8.什么是Topic(主题)?

主题,kafka通过不同的主题却分不同的业务类型的消息记录。

9.什么是Partition(分区)?

每一个Topic可以有一个或者多个分区(Partition)。

10.什么是副本(Replication)?

每个主题在创建时会要求制定它的副本数(默认1)。

11.什么是记录(Record)?

实际写入到kafka集群并且可以被消费者读取的数据。每条记录包含一个键、值和时间戳。

12.kafka适合哪些场景?

日志收集、消息系统、活动追踪、运营指标、流式处理、时间源等。

13.kafka磁盘选用上?

SSD的性能比普通的磁盘好,这个大家都知道,实际中我们用普通磁盘即可。它使用的方式多是顺序读写操作,一定程度上规避了机械磁盘最大的劣势,即随机读写操作慢,因此SSD的没有太大优势。

14.使用RAID的优势?

提供冗余的磁盘存储空间

提供负载均衡

15.磁盘容量规划需要考虑到几个因素?

新增消息数

消息留存时间

平均消息大小

备份数

是否启用压缩

16.Broker使用单个?多个文件目录路径参数?

log.dirs 多个log.dir 单个

17.一般来说选择哪个参数配置路径?好处?

log.dirs好处:提升读写性能,多块物理磁盘同时读写高吞吐。故障转移。一块磁盘挂了转移到另一个上。

18.自动创建主题的相关参数是?

auto.create.topics.enable

19.解决kafka消息丢失问题?

不要使用 producer.send(msg),而要使用 producer.send(msg, callback)。

设置 acks = all。

设置 retries 为一个较大的值。

设置 unclean.leader.election.enable = false。

设置 replication.factor >= 3。

设置 min.insync.replicas > 1。

确保 replication.factor > min.insync.replicas。

确保消息消费完成再提交。

20.kafka消息重复问题?

做好幂等。数据库方面可以(唯一键和主键)避免重复。在业务上做控制。

本文来源于:奈学开发者社区

https://ask.naixuejiaoyu.com/article/229

如有侵权请联系我删除。

用户头像

奈学教育

关注

还未添加个人签名 2020.05.09 加入

还未添加个人简介

评论

发布
暂无评论
Kafka面试题——20道Kafka知识点