原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。

有朋友通过微信号,找到我。说:你的文章虽然有干货,但是又臭又长,能不能做点视频?

翻了下别人的文章,我才发现,我的确实是又臭又长。平均字数在5000左右,可以拆成两三篇的。不过我就这风格,利于大家以架构的思维去思考。当然扯蛋玩的故事除外,那得短小精悍。

我没什么时间录制视频,所以分享给大家的,是平常工作培训的内容,原汁原味。今天做的这个分享,是基于小姐姐味道以前的两篇kafka文章。搞懂了这些,面试无碍。(也可关注哔哩哔哩小姐姐味道,有些不方便微信传的视频会放在那里)

Kafka基础知识索引 这篇文章,系统的讲解了kafka的一些基础知识。对于正在学习kafka消息队列的同学来说,可以系统的了解一些概念性的东西。

360度测试:KAFKA会丢数据么?其高可用是否满足需求? 这篇文章,通过压力测试,探讨了kafka在业务场景的应用,以及丢消息的场景。大家都知道kafka用在高吞吐的日志场景是没问题的,那么它到底能用在业务上么?本篇文章解开谜题。

视频有40分钟,所以我剪成了两部分。

勘误

这两篇文章中,其实是有些错误的。现勘误如下: 1、文中,说到ack=-1的时候,需要确保所有的副本都收到消息。这个所有的描述,是不正确的,它其实指的是ISR列表中的副数量。具体来说,是参数min.insync.replicas指定的。

2、文中有一张图,有两个consumer同时指向了一个partition(分区)。这在实际情况下,是不可能发生的。一个consumer只能是消费同一个partition,是局部有序的。相互之间不会相互影响。

3、笔误:at most once和at least once写反了。这个已经在留言中说明。