一.kafka设计解析

1. 思考问题
  1. kafka有哪些优点?
  2. kafka存储结构如何设计的?
  3. kafka的高效性是怎么保证的?
  4. kafka的leader选举策略是怎么样的?
  5. kafka的消息生产消费模式?有什么优缺点?
  6. kafka的副本数配置对效率有哪些影响,如何优化?
  7. kafka的有哪些实践优化策略?
  8. 基于随机的partition策略,kafka的comsumer如何做到顺序性消费?
  9. kafka的failover机制是怎么样的?
  10. 消息消费有哪几种模式?kafka consumer的消费方式是怎样的?
  11. consumer是如何做rebalance的?有什么优劣?
  12. high level api 和low level api相比有什么区别?优势是什么?

2. 回答
  1. kafka的消息都是顺序追加到partition中的,顺序写磁盘比随机写内存的效率还高;kafka的broker是无状态的,不需要标记哪些消息被哪些consumer过,不需要保证一条消息只能被同一个consuner gruop中的一个consumer消费,因此也不需要锁机制;kafka在每个操作过程中尽量使用批处理;consumer在读取数据的过程中,Kafka使用sendfile API来直接通过操作系统直接传输,而不用把数据拷贝到用户空间

kafka参考资料

  • kafka深度解析
  • kafka官网

你可能感兴趣的:(一.kafka设计解析)