On behalf of the team and everyone in the community who contributed, we are pleased to announce the general availability of Spring for Apache Kafka 3.2.0
.
Spring for Apache Kafka 3.2.0
Th 3.2.0
GA version includes new additions, feature enhancements, bug fixes, and documentation updates. For more details on all the changes in the 3.2.0
release, please see https://github.com/spring-projects/spring-kafka/releases/tag/v3.2.0.
The upcoming Spring Boot 3.3.0
will include the 3.2.0
version of Spring for Apache Kafka.
Since this is the first GA version in the 3.2.x
line, here is a recap of all the enhancements and features that went into this new generation of Spring for Apache Kafka.
- This version uses the Kafka Client version
3.7.0
, that introduced the new consumer group protocol. This is included as an early access feature in the3.7.0
client and not meant to be used in production. We recommend the new consumer group protocol at this point only for testing purposes. By default, the classic consumer is used in Spring for Apache Kafka and when testing the new consumer group protocol, that must be opted in using thegroup.protocol
consumer property. For more information, see this. - Here is a new sample application that demonstrates the early access version of the new consumer group protocol.
- The
KRaft
mode is disabled by default inEmbeddedkafka
due to certain limitations inKafkaClusterTestKit
. If anyone wants to tryEmbeddedKafka
inKRaft
mode, they have to enable it via thekraft
property on theEmbeddedKafka
. In addition, the new consumer group protocol only works inkraft
mode and therefore, when testing this new protocol, we recommend not usingEmbeddedKafka
withkraft
mode enabled due to the aforementioned limitations inKafkaClusterTestKit
. To test the new consumer group protocol, we recommend using a real broker inKRaft
mode. For more info, see here. - Ability to enforce a rebalance on the Consumer programmatically.
- New API for interactive queries in Kafka Streams support in the framework.
- Customizations on the transaciton id suffix.
- Provide a way to route to different DLT’s based on exception types in non-blocking retries.
- Asynchronous Kafka Listener return types.
- Improvements in AfterRollbackProcessor to skip entire batch of records that keeps failing.
- Non-blocking retries support on class level
@KafkaListener
. For more detail see here RetryTopicConfiguration
improvements- New API method to seek to an offset based on a user provided function. For more information, see the reference docs.
@PartitionOffset
support for seek position.- Removed many of the Apache Kafka specific native runtime hints in Spring for Apache Kafka in preference to the same support in graalvm-reachability-metadata.
In addition, more enhancements and bug fixes have been made on throughout the 3.2.0
journey. For information on all changes, see the corresponding milestones and RC releases.
https://github.com/spring-projects/spring-kafka/releases/tag/v3.2.0-M1
https://github.com/spring-projects/spring-kafka/releases/tag/v3.2.0-M2
https://github.com/spring-projects/spring-kafka/releases/tag/v3.2.0-RC1
Spring for Apache Kafka 3.1.5 and 3.0.17
Spring for Apache Kafka 3.1.5
and 3.0.17
have also been released. 3.0.17
is the last patch release in the 3.0.x
generation as this is out of OSS support. This version is only going to be commercially available going forward. For more details on the commercial support line, please see the support timeline.
Both patch releases include a few improvements and bug fixes. For more details, see the following change logs.
https://github.com/spring-projects/spring-kafka/releases/tag/v3.0.17
https://github.com/spring-projects/spring-kafka/releases/tag/v3.1.5
Spring Boot 3.1.12
and 3.2.6
releases will include Spring for Apache Kafka 3.0.17
and 3.1.15
, respectively.
We want to express our gratitude to everyone who contributed to these releases. Your contributions are invaluable and play a crucial role in the continuous improvement of Spring for Apache Kafka.
Staying in touch with the project
The following are the usual avenues to engage with the project.
暂无评论内容