Kafka 2.0重磅发布,新特性解读
极客时间编辑部
讲述:丁婵大小:1.42M时长:03:07
近日,Apache Kafka 项目正式发布了 2.0.0 版本。距离 1.0 版本的发布,相距还不到一年,这一年不论是社区还是 Confluent 内部,对于 Kafka 要向哪里发展都有很多讨论。
这次版本的发布,更新了许多新特性,本文对其中几个新特性进行了解读。
1.KIP-268:简化 Kafka Streams 升级过程
在 Kafka Streams 客户端中,利用了 Consumer Rebalance 协议里面的元数据字符串编码,然而,当编码版本本身改变的时候,就需要进行离线升级。
而这次更新的 KIP-268 利用 version prob,可以使得旧版本的任务分配者通知其他高版本的成员,暂时使用旧版本的 Rebalance 元数据编码,这样就可以让用户通过 rolling bounce 在线升级 Kafka Streams 的版本。而当所有参与的成员全部升级完毕之后,最后一次 Rebalance 会自动切换回新版本的元数据编码。
2.KIP-279:修补多次 Kafka 分区主本迁移时的日志分歧问题
在升级 Kafka 版本或者做定期系统维护的时候,用户往往需要进行连续的多次 Kafka 分区迁移。在这次发布中,修补了一个会导致日志分歧发生的边缘情况。所有的主副本都可以知道,自己到底处于当前分区备份的哪一个阶段,从而杜绝因为消息不对等而可能导致的日志分歧。
3.KIP-223:加入消费者客户端的领先指标
在此之前, Kafka 消费者客户端已经加入了对每个消费分区的延迟指标(lag metrics),定义为当前消费者在分区上的位置与分区末端(log-end-offset)的距离。然而,当分区 renteion 时间很短,而导致消费者跌出可消费的范围时(out-of-range),这个指标就不能完全针对潜在的危险为用户报警。
因此,在即将发布的 2.0 版本中,加入了另一个“领先”指标(lead metrics),作为分区首端(log-start-offset)与消费者在分区上的距离位置,当这个指标接近于零时,代表着消费者有跌出可消费范围而丢失数据的危险,从而进行更好的监控。
4.KIP-290、KIP-227:细粒度前缀通配符访问控制
在 2.0 以前,很多 Kafka 自身的访问控制(access control list)机制还是粗粒度的。比如,对“创建话题”这一访问方式的控制,只有“全集群”这一种范围。而对于 Kafka Streams 客户端,“全集群”的话题创建权限又太危险。
因而,在 2.0 版本中,Kafka 进一步细粒度化了很多权限,比如 KIP-290 就加入了前缀通配符(prefix wildcard)的范围,而 KIP-227 就将这种范围加入到了单个或多个话题创建的权限中。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论