kafka学习总结

引言

最近接触的项目中使用kafka做日志收集和消息队列,所以学习了一下kafka。因为kafka是一个分布式的项目,所以要依赖zookeeper做集群的调度管理,建议在学习了zookeeper的基础上学习kafka,这样才能事半功倍。

学习资料

kafka官方中文文档:

https://kafka.apachecn.org/documentation.html

官方中文文档无疑是最全面、最权威的学习资料,但是比较晦涩难懂,不建议使用它来入门。可以在有一定基础后再来参考。

尚硅谷kafka教程:

https://www.bilibili.com/video/BV1a4411B7V9

这个教程来入门还是蛮不错的,配套的文档也可以在视频下方评论区找到,但是比较偏向kafka在大数据领域中的使用。

大佬的博客:

https://blog.csdn.net/tangdong3415/article/details/53432166/

宝藏教程,供懒得看视频的程序猿使用。

重要概念

producers、consumer、Broker、Topic这些基础且简单的概念参考教程,不再赘述。

发布/订阅模式

消息生产者(发布)将消息发布到 topic 中,同时有多个消息消费者(订阅)消费该消息。一对多,且消费者消费数据之后不会清除消息,类似于我们的微信公众号。

Consumer Group (CG)

消费者组,由多个 consumer 组成。 一个分区不能被组内两个消费者消费,也就是说分区与消费者是一对一的关系;消费者组之间互不影响。所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者。

Partition(分区)和Replica(副本)

kafka的分区和副本是重要而且较为复杂的概念,理解这两个概念的机制花费了比较大的功夫。副本还涉及到一个选举机制,leader和follower的概念与zookeeper较为相似但又有所不同。这部分参考文章:

https://www.cnblogs.com/listenfwind/p/12465409.html
https://www.cnblogs.com/qxynotebook/p/11235275.html

下边的内篇文章比较好,图文并茂。内外要注意一个分区副本的数目不能超过borker的数目,因为一个borker上存两个副本是没有意义的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值