Gary Russell

Gary Russell

校友
博文Gary Russell

Spring for Apache Kafka 和 Spring for RabbitMQ 的新主要版本

发布 | 2022年11月21日 | ...

我很高兴地宣布 Spring for Apache Kafka 和 Spring for RabbitMQ 的新主要版本(3.0.0)现已发布。

常见变化

这些项目的 3.0.x 版本有以下共同变化:

  • 它们依赖于 Java 17 或更高版本

  • 它们依赖于 Spring Framework 6.0.x

  • 支持创建原生 GraalVM 应用程序

  • 支持 Micrometer 可观测性和跟踪

  • 现在提供了 Bill of Materials POM 来帮助进行依赖管理

Spring for Apache Kafka

  • 支持全局单一的 EmbeddedKafkaBroker(跨多个测试类)

  • @RetryableTopic(非阻塞重试)的几项增强功能

  • KafkaTemplate 方法现在返回 CompleteableFuture 而不是已弃用的 ListenableFuture

Spring for Apache Kafka 2.9.0 已发布

发布 | 2022年8月2日 | ...

我很高兴地宣布 Spring for Apache Kafka 2.9.0 现已发布。

此版本不通过 Spring Boot 依赖管理提供,但可与 Boot 2.7(或 2.6)一起使用,前提是您按照本附录中所述将 Kafka 依赖项覆盖为 3.2.0,特别是如果您正在使用嵌入式 Kafka 代理。

请参阅发布候选版本公告以了解此版本中的显著变化。

有关此版本中所有更改的信息,请参阅新功能

项目页面 | GitHub | 问题 | 文档 | Stack Overflow | Gitter

Spring for Apache Kafka 2.9 发布候选版本现已发布

发布 | 2022年7月7日 | ...

我很高兴地宣布 Spring for Apache Kafka 2.9.0 的发布候选版本 (2.9.0-RC1) 现已在 Spring 里程碑仓库中提供。

此版本不通过 Spring Boot 依赖管理提供,但可与 Boot 2.7(或 2.6)一起使用,前提是您按照本附录中所述覆盖 Kafka 依赖项,特别是如果您正在使用嵌入式 Kafka 代理。

显著变化

  • 此版本使用 3.2.0 kafka-clients 版本

  • 非阻塞重试的引导现在更健壮

  • 新错误处理程序模式

默认情况下,发生错误后,DefaultErrorHandler 会在上次轮询的剩余记录上执行 seek 操作,并在下次轮询时从代理重新获取这些记录。在高错误率和大的 max.poll.records 情况下,这可能会对网络造成不必要的压力。因此,错误处理程序有一个新属性 seekAfterError,当设置为 false 时,它不会 seek 记录,而是将剩余记录保留在内存中,并在下次轮询(或如果错误处理程序配置为使用 ContainerPausingBackOffHandler,则多次轮询)时暂停消费者…

Spring AMQP (Spring for RabbitMQ) 安全报告

工程 | 2021年11月29日 | ...

最近发布的 Spring AMQP 版本(2.4.0、2.3.12、2.2.20)包含针对 CVE-2021-22095 的修复,该漏洞可能导致非常大的消息出现潜在的 OutOfMemoryError

Spring Boot 2.6.0 和 2.5.7 版本将分别引入 spring-amqp 的 2.4.0 和 2.3.12 版本。Boot 2.4.x 的用户应将 spring-amqpspring-rabbit 版本覆盖为 2.3.12;Spring Boot 2.3.x 的用户应将版本覆盖为 2.2.20。

Spring for Apache Kafka 2.8 现已发布

发布 | 2021年11月18日 | ...

我很高兴地宣布 Spring for Apache Kafka 2.8.0 现已发布。

显著变化

  • 此版本使用 3.0.0 kafka-clients 版本

  • 现在支持乱序手动提交

  • 现在同一个容器工厂可同时用于批处理和记录监听器

  • 独立的记录和批处理错误处理程序已被通用错误处理程序取代

  • KafkaTemplate 现在可用于从已知分区/偏移量接收特定记录

有关此版本中所有更改的信息,请参阅新功能

项目页面 | GitHub | 问题 | 文档 | Stack Overflow | Gitter

Spring for Apache Kafka 2.7.0 已发布

工程 | 2021年4月14日 | ...

我很高兴地宣布 Spring for Apache Kafka 2.7.0 现已发布。

此版本包含一个重大的增强功能,这是社区贡献。失败的交付可以转发到一系列主题以进行延迟重试。

最好通过一个示例来描述

@RetryableTopic(attempts = "5", backoff = @Backoff(delay = 1000, multiplier = 2.0))
@KafkaListener(id = "sk270", topics = "sk270")
public void listen(String in, @Header(KafkaHeaders.RECEIVED_TOPIC) String topic) {
    LOG.info(in + " from " + topic);
    throw new RuntimeException("test");
}

@DltHandler
public void…

Spring for Apache Kafka 2.5.0 发布候选版本

发布 | 2020年4月30日 | ...

2.5.0.RC1 发布候选版本现已在 Spring 里程碑仓库中提供。

更新:2.5.0.RELEASE 已于5月13日发布。

亮点

  • kafka-clients 2.5.0(版本号对齐是巧合)。

  • 在使用协作式再平衡时,支持对保留分区重新提交可重试的偏移量提交异常。

  • 支持新的“fetch-offset-request”生产者隔离(当代理版本为 2.5 或更高时),减少了所需的生产者数量。

  • 支持静态组员。

  • 与 Micrometer 更深入的集成。

  • 可选的交付尝试头部。

  • RecoveringBatchErrorHandler 可以提交部分批次并从批次中的失败记录重新播放(在监听器的配合下);这现在是批处理监听器的默认行为。

Spring for Apache Kafka 2.4 已发布

发布 | 2019年12月23日 | ...

为了支持上周发布的 Apache Kafka 2.4.0,我很高兴地宣布 Spring for Apache Kafka 2.4 - 2.4.0.RELEASE - 已在 Maven Central 中发布。

此版本在功能上基本等同于 2.3.x,但它是针对 2.4.0 kafka-clients 编译的,并支持新的增量再平衡协议。

2.4.0 kafka-clients 与 Spring for Apache Kafka 2.3 不二进制兼容,因此如果您希望使用 2.4.0 客户端,则必须升级到此版本。有关如何覆盖 jar 版本的信息,请参阅参考手册中的附录,特别是如果您正在使用 Spring…

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有