Kafka3.4.0发布信息可参考https://cwiki.apache.org/confluence/display/KAFKA/Release+Plan+3.4.0
1.发布时间
KIP Freeze时间:2022年11月16日
Feature Freeze时间:2022年11月30日
Code Freeze时间:2022年12月7日
代码封板后,最少需要保持2周的稳定期。
2.版本需求
Kafka3.4.0对以下12个特性进行了开发。
2.1.KIP-830: 允许禁止JMX Reporter
目前所有的kafka组件都支持Metrics Reporters,其中JmxReporter是内置的。我们可以通过metrics.jmx.include或metrics.jmx.exclude参数来配置哪些metrics需要被暴露或禁止,而不能通过配置metric.reporters配置将JmxReporter全面禁止。
JmxReporter在开发环境和其他某些环境很有用,但在生产环境中,如果不想使用JmxReporter,最好还是禁止JmxReporter启动。
2.2.KIP-866: ZK到KRaft的迁移方案
为了让用户对迁移到KRaft更有信心,我们将允许回滚到ZooKeeper,直到迁移的最后一步。这是通过在迁移过程中写入元数据的两个副本来实现的,一个到KRaft,一个到ZooKeeper。
2.3.KIP-876: 基于时间的集群源数据快照
对于集群元数据topic partiton,快照常常是压缩日志和去除冗余的记录。Kafka支持根据自上次快照以来新增的消息生成快照。这很好地分摊了生成快照的成本。
除了压缩之外,快照还可以用作集群元数据分区的备份。为了更好地支持这种场景,我们应该允许Kafka基于时间生成快照。
KIP-770: Replace "buffered.records.per.partition" & "cache.max.bytes.buffering" with "{statestore.cache}/{input.buffer}.max.bytes"
KIP-787: MM2 manage Kafka resources with custom Admin implementation.
KIP-792: Add "generation" field into consumer protocol
KIP-837: Allow MultiCasting a Result Record.
KIP-840: Config file option for MessageReader/MessageFormatter in ConsoleProducer/ConsoleConsumer
KIP-854 Separate configuration for producer ID expiry
KIP-862: Self-join optimization for stream-stream joins
KIP-865: Support --bootstrap-server in kafka-streams-application-reset
KIP-881: Rack-aware Partition Assignment for Kafka Consumers