云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?

Posted 云原生实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?相关的知识,希望对你有一定的参考价值。

这段时间招聘季,后台收到不少关于 Kafka 的问题,确实 Kafka 近两年的行情,可谓是水涨船高了。

 

根本原因是,是 Apache Kafka 作为一款开源的消息引擎系统。凭借高可靠、高吞吐、高可用、可伸缩等优越特性,在数据采集、传输、存储的过程中,发挥着举足轻重的位置,说是大数据领域的杀手锏也不为过。

 

举个例子,普通开发人员在实际工作过程中,一定参与到了很多大数据业务系统的构建。对于如何应对数据量激增、数据复杂度增加,以及数据变化速率变快等问题, Kafka 都可以很好的解决。就拿数据量激增来说,Kafka 能够有效隔离上下游业务,将上游突增的流量缓存起来,以平滑的方式传导到下游子系统中,避免了流量的不规则冲击。

 

其实,Kafka 在实际业务系统中的应用更为广阔,比如实现消息队列应用、应用程序集成、分布式存储构建,甚至是流处理应用的开发与部署。可谓是学习一套框架,打通多个关键点,相当超值了。

 

从行业角度来看,目前所有主流的互联网公司,都在用 Kafka。如果你能够深入进去,把 Kafka 的原理搞懂,再或者进一步,能够给 Kafka 贡献源代码,那这绝对是你简历里亮眼的一笔。

 

简单来说,Kafka 作为主流的 MQ 之一,是每个 Java 开发、大数据从业人员,非常必要的一项技能了。


我身边不少工程师,都把 Kafka 加入到自己的学习列表。但想学透 Kafka,没那么简单,我的建议是:千万不要直接扎到具体的细节中,亦或是从一个很小的点开始学习。因为你无法建立全局的认知观,从而实现系统地学习。

 

当年我学习 Kafka 的时候,踩了不少坑。直到看了 Kafka 资深专家胡夕的书《Apache Kafka实战》,豆瓣评分 8.8 分,很有收获。所以后来听说他出了个《Kafka 核心技术与实战》的专栏,第一时间就买了,果然超出预期。

 

在这先分享一张胡夕总结的 Kafka 学习框架,分为 Kafka 入门、Kafka 的基本使用、客户端详解、Kafka 原理介绍、Kafka 运维与监控以及高级 Kafka 应用,建议收藏。

Kafka 学习框架

这些内容,来自他的《Kafka 核心技术与实战》专栏,胡夕把 Kafka 集群环境的监控和管理、内容原理剖析,以及消息系统常见疑难问题,都讲得清晰透彻。我最大的收获,就是对 Kafka 的原理、机制以及参数的理解更深入了。

 

尤其是胡夕把官方文档中,上百个参数精简成十几个重要的参数,非常实用。

 

我很认可胡夕的观点:“在实际工作中进行学习,才能学得最快,掌握得也最扎实”,专栏也是这个思路,有很多实操性的知识,需要自己搭建测试环境进行实践。

 

最近 2 刷,又有新的心得和体会,毫不夸张的说,跟着学下来,能全面提升你的 Kafka 实战能力。现在已经将近 1.5W 人订阅了,口碑相当不错。原价 ¥199 ,现在只需 ¥119 ,别错过。

 

云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?

秒杀 + 口令「 Happy2021

原价 ¥199 ,到手仅¥119

更有新人到手价¥69.9


说到胡夕,在 Kafka 领域,他相当有发言权了。

 

作为 Apache Kafka 的一名活跃代码贡献者。在过去几年中,他经历了 Kafka 从最初的 0.8 版本逐步演进到 2.7 版本的完整过程,可以说对 Kafka 及其他开源流处理框架与技术有深刻理解。

 

他主导过多个十亿级/天的消息引擎业务系统的设计与搭建,具有丰富的线上环境定位和诊断调优经验,也曾给多家大型公司提供企业级 Kafka 培训。所以对于传授知识,经验很是丰富。

 

我自己学下来,印象最深刻的,是胡夕在讲参数配置的时候,在第 7 讲、第 8 讲的标题中,用了 3 个“最”字,并且在文章里分享了最重要、最核心的集群参数配置。看完这两讲之后,对于一直以来持有的“Kafka配置优化过程中怎么有这么多参数”的怨念,才得以消解。

 

不必贪多求全,只要掌握最核心的内容就可以了。

 

云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?

专栏的评论值得好好看,很多读者的总结概括能力都很强,对信息进行二次提炼,也能帮你进行梳理,对于困惑的问题,只要你写在评论区,胡夕就会及时回复,可以说做到了“今日疑,今日解,不积攒遗留问题”。


除了答疑解惑,胡夕还很具有分享精神。大家都知道,读阅码有多么痛苦。而胡夕曾经花了将近一年的时间,啃下了 50 万行 Kafka 源代码,想到那句“聪明人也要下死工夫”,这毅力,真的是令人佩服。

 

而胡夕也在加餐中分享了他阅读源码的方法,而且是直接将源码在 IDE 中展示出来,并且对着实际代码描述阅读代码的方式,实操性很强。

 

另外,每一篇文章结束,都有一个知识卡片的总结,便于记忆。

 

云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?

 真诚的说,在 Kafka 这块,没有比胡夕讲得更体系的学习资料了,非常良心,截了些评论给你参考:

 

云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ? 

总的来说,跟着胡夕学,你可以获得这 6 个部分的知识:

 

  • Kafka 入门。介绍消息引擎这类系统的原理和用途,以及作为优秀的消息引擎代表,Kafka 是如何“脱颖而出”的。

 

  • Kafka 的基本使用。重点探讨 Kafka 如何用于生产环境,特别是线上环境的方案该如何制定。

 

  • 客户端实践及原理剖析。重点学习 Kafka 客户端的方方面面,既有生产者的实操讲解,也有消费者的原理剖析。

 

  • 深入 Kafka 内核。着重介绍 Kafka 最核心的设计原理,包括 Controller 的设计机制、请求处理的全流程等。

 

  • 管理与监控。这部分涵盖 Kafka 运维与监控的内容,将讨论如何高效运维 Kafka 集群,并分享有效监控 Kafka 的实战经验。

 

  • 高级 Kafka 应用之流处理。最后这一部分将会介绍 Kafka 流处理组件 Kafka Streams 的实战应用,并带你从头开发一个 demo 项目。

 

我把目录也给你扒来给你看看

以上是关于云原生头号消息引擎系统,是 Kafka 还是 RabbitMQ?的主要内容,如果未能解决你的问题,请参考以下文章

颠覆Kafka的统治,新一代云原生消息系统Pulsar震撼来袭!

颠覆Kafka的统治,新一代云原生消息系统Pulsar震撼来袭!

颠覆 Kafka 的统治,下一代云原生消息平台 Pulsar 来了!

简单谈谈对云原生领域MQ组件kafka的理解

主流消息队列Kafka和下一代云原生消息平台Pulsar架构分析

kafka系统设计开篇