摘要
本文主要列出一些在日常和面试中高频的问题,按照出现频率降序
面试题
Q1:有没有用过Kafka?能简单介绍一下Kafka吗?另外在你们系统中是怎么使用的?
- 用过(答没用过的同学,本文到此结束,后边不用看了)
- Kafka是一个消息队列中间件,主要基于发布/订阅思想实现的,能够提供一套高可靠,高吞吐量的消息服务,可以应用于实时流式处理,业务系统解耦。其本身的设计初衷也是为了解决实时事件流处理,之后后边因为优秀的能力成为了在业务场景下消息队列一个选择
- 列举Kafka在业务系统内的使用方式和目的
- 比如:解耦了 xxx 业务和 yyy 业务,精简了核心业务流程,提升吞吐量
Q2:能介绍下Kafka都有哪些角色定义吗?
思考:他想知道的东西
- Kafka 都有什么角色定义,最好按照消息传递的方向进行说,显得思维的逻辑性,也不容易说漏
- 简单介绍各个角色的职责
- 这些角色加在一起是不是构成了Kafka的某些特性
回答:
Kafka有如下角色定义
- Producer:消息生产者,负责向kafka集群发送业务系统产生的消息,