qidao123.com技术社区-IT企服评测·应用市场

标题: 王炸!Kafka 4.0 重磅发布,Java 8 和 Zookeeper 彻底被扬弃了,一个时代竣事了! [打印本页]

作者: 杀鸡焉用牛刀    时间: 2025-3-26 09:01
标题: 王炸!Kafka 4.0 重磅发布,Java 8 和 Zookeeper 彻底被扬弃了,一个时代竣事了!
大家好,我是R哥。
Kafka 4.0 终于来了!

这次更新可不只是常规的版本优化,而是一次重大架构调解,尤其是不再支持 Java 8,彻底移除了 Zookeeper,正式启用 KRaft 模式,让 Kafka 变得更加独立、高效。
除了这个重磅更新外,Kafka 4.0 还砍掉了一些历史包袱,还带来几个重磅新功能,这次升级可谓是大刀阔斧,革新不断,让我们一起看看它的主要变化吧。
Kafka 4.0 主要新特性

1、正式移除 Zookeeper

说到 Kafka 4.0,第一个必须说的就是:Zookeeper,彻底移除了,这绝对是 Kafka 4.0 版本中最最最重磅的变化。
来看看旧模型和新模型的区别:

在 Kafka 早期架构中,Zookeeper 一直和 Kafka 深度绑定,负责生存 Kafka 的元数据、节点状态、推举控制器等核心功能。
固然 Zookeeper 也是非常主流的分布式中间件,但对于讲究性能的 Kafka 来说越来越成为了累赘,比如 Kafka 须要额外维护一个 Zookeeper 集群,这就增加了管理和维护本钱,扩展性也受限,影响性能。
所以 Kafka 前几年就弄出来了KRaft 模式,把 Kafka 的元数据从 Zookeeper 搬到了 Kafka 自己管理的内部系统中。这就相称于 Kafka 白手起家,逐步离开 Zookeeper 的控制。
KRaft 是 Raft 的一个分支,但有一些不同,它扩展了 Kafka 现有的复制协议,并增加了一些与 Raft 相关的功能。
Kafka 2.8.0 版本已经对 Zookeeper 做了早期更换:

而这次 Kafka 4.0 正式移除 Zookeeper 的所有功能,KRaft 模式全面接管所有功能
Kafka 4.0 不再支持利用 Zookeeper 模式启动集群,也就是说,从这个版本开始,你就得全面利用 KRaft 模式(Kafka Raft) 来运行 Kafka。
KRaft 带来的长处包罗:
总之,移除 ZK,让 Kafka 更轻、更快、更强、更易维护
升级 4.0 注意事项:
2、移除旧协议 API 版本

Kafka 一直以来都死磕着兼容所有协议 API 版本,这么多年已往了,维护这么多旧版本的本钱是越来越高,代码变复杂了,测试也麻烦了,关键是用老版本的人也越来越少,大部分都早换到了支持新协议的客户端。
所以,到了 Kafka 4.0,彻底移除了一些旧协议 API 版本,把协议 API 版本的基准提高到 Kafka 2.1。简单来说就是,仅保留 Kafka 2.1 支持的最新版本及之后推出的新版本。
这样一来,Kafka 4.0 既能摆脱一堆历史包袱,又不会影响太多用户,算是个折中方案。总之,该优化的优化,该淘汰的淘汰,让 Kafka 走得更远、更稳!
升级 4.0 注意事项:
3、新一代消费者重平衡协议

Kafka 3.7.0 推出了新一代消费者再平衡协议的早期版本,主要有三个变化:
新一代消费者重平衡协议,将复杂性从消费者转移到代理内的组协调器,并利用了全新的消费者线程模型
新协议的优化,在简化客户端同时,能显著减少停机时间和延迟,提高了消费者组的稳定性和性能,尤其是在大规模部署中。
在 Kafka 3.7.0 还不建议生产利用了,Kafka 4.0 正式公布告别 stop-the-world 重平衡,全面开放下一代消费者重新平衡协议正式可用
4、Kafka Queues 队列来了

在 Kafka 4.0 版本之前,Kafka 主要采用发布-订阅模式,固然也可以实现点对点的消息通报,但是存在一些局限性。
Kafka 4.0 引入了  "Queues"  队列功能,使 Kafka 可以或许直接支持传统队列语义,旨在更直接和高效地利用点对点消息模式,增强其在点对点消息模式下的能力。
如图所示:

Kafka 队列功能主要解决以下问题:
Kafka 队列是通过共享组(Share Groups)来实现的,共享群组答应多个消费者协作消费同一主题的消息,实现类似传统队列的语义。多个消费者可以共同处理同一分区内的消息,提高了消息处理的并行度和效率。
Kafka 队列现在还是早期特性,不建议生产利用,等背面的版本正式可用吧。
5、其他变化

Kafka 4.0 的其他新变化:
更多可参考官方发布说明。
总结

Kafka 4.0 版本的更新,标志着 Kafka 正式迈入了一个全新的阶段。
从完全弃用 Java 8,再移除 Zookeeper 到全面启用 KRaft,Kafka 变得更轻、更快、更强、更易维护。
还有旧协议版本的清算、新的消费者重平衡协议、队列功能的引入等一系列优化,让 Kafka 进一步提升了可扩展性和性能,同时低落了维护本钱。
不过,升级到 Kafka 4.0 也须要谨慎对待,特别是 Zookeeper 模式已经被完全移除,老版本的用户须要逐步过渡到 KRaft 模式。
同时,部分旧协议 API 也已被砍掉,所以在升级前一定要检查兼容性,确保你的系统不会受到影响。
总之,Kafka 4.0 是一次里程碑式的升级,无论是新的架构调解还是性能优化,都让 Kafka 这个小钢炮又上了一个新的台阶,太强了。
参考链接:
版权声明: 本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿同等投诉侵权,后果自负,并保留追究其法律责任的权利。
更多文章推荐:
1.Spring Boot 3.x 教程,太全了!
2.3,000+ 道 Java面试题及答案整理(最新版)
3.免费获取 IDEA 激活码的 7 种方式(最新版)
4.Java & DeepSeek & AI 学习资料分享
5.步伐员精致简历模板分享
以为不错,别忘了随手点赞+转发哦!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/) Powered by Discuz! X3.4