神马操作,Kafka 居然宣布弃用 Java 8

   日期:2024-12-30     作者:caijiyuan      
核心提示:Kafka 3.0.0 发布了: 主要更新如下: The deprecation of support for Java 8 and Scala 2.12Kafka Raft support f

Kafka 3.0.0 发布了

神马操作,Kafka 居然宣布弃用 Java 8

主要更新如下

The deprecation of support for Java 8 and Scala 2.12

Kafka Raft support for snapshots of the metadata topic and other improvements in the self-managed quorum

Stronger delivery guarantees for the Kafka producer enabled by default

Deprecation of message formats v0 and v1

Optimizations in OffsetFetch and FindCoordinator requests

More flexible Mirror Maker 2 configuration and deprecation of Mirror Maker 1

Ability to restart a connector's tasks on a single call in Kafka Connect

Connector log contexts and connector client overrides are now enabled by default

Enhanced semantics for timestamp synchronization in Kafka Streams

Revamped public API for Stream's TaskId

Default serde becomes null in Kafka

第一条就是宣布弃用对 Java 8 和 Scala 2.12 的支持

在 Kafka 3.0.0 中,Kafka 项目中的所有组件都已弃用对 Java 8、Scala 2.12 的支持,宣布弃用,但 3.0.0 还能用,这次宣布只是给用户一个调整的时间,到了 Kafka 4.0,Java 8、Scala 2.12 将将正式取消支持。

其实,其他一些中间件也早有停止对 Java 8 的支持,选择 Java 11 作为最低支持版本,但 Kafka,这可能是自 Java 17 发布以来,也就是近半月时间,官宣弃用 Java 8 打响的第一枪。。

Java 8 虽然有点老了,但依然是现在市场上用的最多的版本,虽然有些中间件不再支持 Java 8 了,但实际开发工作并不受影响,Java 8+ 系列教程我也写了一堆了,关注公众号Java技术栈在菜单栏中进行阅读吧。

Kafka 目前支持的 Java 版本如下

从官网看,Kafka 目前支持两个 LTS 版本( Java 8 和 Java 11

如果启用 TLS,那么 Java 11 的性能将得到显著提升,所以官方也强烈推荐大家使用 Java 11。

Java 11 是比 Java 8 更新一代的长期支持版本,它还包括许多其他的性能改进,比如G1 垃圾收集器、CRC32C、字符串压缩、Thread-Local 握手机制 等等,另外从安全的角度考虑,建议使用较为新一点的安全版本,防止老版本的安全漏洞。

现在随着 Java 17 的发布及免费,Java 17 还是史上最快的 JDK,相信在不久的时间,Kafka 对于 Java 17 的支持也会安排上。在多个 Java 版本上进行开发、编译和测试,对于 Kafka 团队来说肯定是一笔不小的维护成本,所以,Kafka 还有什么理由继续保留 Java 8 呢

Java 11/ Java 17 可能是更香的选择


此外,Kafka 3.0 还改进了 KRaft 共识算法(Raft 的变种

这个 Kafka 内置的 KRaft 共识机制,是用来取代 Apache ZooKeeper 的,早在很久之前(Kafka 2.8.0) Kafka 就宣布替换 Zookeeper 了

不过到现在还不是很成熟,目前还不建议用在生产环境,官方也只是建议在开发环境进行试用。

Kafka 一向以性能著称,还要额外维护一个重量级的 Zookeeper 组件,确实也没有必要,所以就自己搞出了 KRaft 机制,让自己变得更轻量,也可以带来更优的性能。

所以,在未来的版本中,Zookeeper 也会消失在 Kafka 的长河里……


总结下,可能大家觉得,很多知识,还没开始学,就要被淘汰了,永远跟不上技术的步伐。。。

是的,很多东西,我们虽然不学,但也要知道,也就是技术的广度,如果现在面试官问你 Kafka 的领导选举机制是怎样的,你还只会说 Zookeeper,而不知道 KRaft 机制的存在,那面试官可能就觉得你对技术的敏锐能力不高了。

     本文地址:http://w.yusign.com/tjnews/4920.html    述古往 http://w.yusign.com/static/ , 查看更多
 
标签: 支持
特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

举报收藏 0打赏 0
 
更多>同类生活信息

相关文章
最新文章
推荐文章
推荐图文
生活信息
点击排行
{
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号