一.kafka设计解析
2017-07-31 本文已影响0人
薇薇一笑vv
1. 思考问题
- kafka有哪些优点?
- kafka存储结构如何设计的?
- kafka的高效性是怎么保证的?
- kafka的leader选举策略是怎么样的?
- kafka的消息生产消费模式?有什么优缺点?
- kafka的副本数配置对效率有哪些影响,如何优化?
- kafka的有哪些实践优化策略?
- 基于随机的partition策略,kafka的comsumer如何做到顺序性消费?
- kafka的failover机制是怎么样的?
- 消息消费有哪几种模式?kafka consumer的消费方式是怎样的?
- consumer是如何做rebalance的?有什么优劣?
- high level api 和low level api相比有什么区别?优势是什么?
2. 回答
- kafka的消息都是顺序追加到partition中的,顺序写磁盘比随机写内存的效率还高;kafka的broker是无状态的,不需要标记哪些消息被哪些consumer过,不需要保证一条消息只能被同一个consuner gruop中的一个consumer消费,因此也不需要锁机制;kafka在每个操作过程中尽量使用批处理;consumer在读取数据的过程中,Kafka使用sendfile API来直接通过操作系统直接传输,而不用把数据拷贝到用户空间
kafka参考资料