Spring Integration 6.0.0-M5 和 5.5.15 已发布

发布 | Artem Bilan | 2022年9月21日 | ...

亲爱的 Spring 社区:

我想与您分享新的 Spring Integration 6.0 代的 Milestone 5 的可用性。

您可以从 Spring Milestone 仓库 获取。

dependencyManagement {
    imports {
        mavenBom 'org.springframework.integration:spring-integration-bom:6.0.0-M5'
    }
}

此外,Spring Integration 5.5.15 已发布,其中修复了一些关键错误并解决了上游依赖项的弃用问题。如果您错过了之前的任何中间版本,或只是通过即将发布的 Spring Boot 2.6.122.7.4 传递性地引入,建议您升级!

随着整个 Spring 套件迁移到 Java 17 和 Jakarta EE,这是一个巨大的内部框架重构,以支持新的 Java 语言级别和 jakarta 命名空间。此外,这还包括升级到最新的依赖项,这些依赖项与 Jakarta EE 兼容或包含我们之前无法迁移的重大更改。

Spring Integration 6.0 的整体显著变化

  • Spring AOT 支持 - 框架内部进行了大量重构,以满足原生镜像的期望,并公开了一些反射、代理和序列化提示。

  • GraphQL 支持 - 新增了 spring-integration-graphql 模块。它完全基于项目中的新 Spring for GraphQL 项目,其 GraphQlMessageHandler 是出站网关的响应式实现,可以执行所有 querymutationsubscription GraphQL 操作。

  • MQTT 模块现在提供了一个 ClientManager 抽象,允许为不同的通道适配器共享同一个 MQTT 客户端。

  • spring-integration-smbspring-integration-hazelcast 扩展已迁移到核心项目,以提高社区可见性。我们计划迁移更多扩展,以实现更好的开发者体验和维护目标。

  • 引入了 PostgresSubscribableChannel,以利用 PostgreSQL 的原生推送通知功能。这样,与 JdbcChannelMessageStore 的交互不是轮询式的,而是一种简单的订阅,当 PostgreSQL 发送通知时,我们就能从数据库中拉取一条消息。

  • Micrometer 可观测性 - 添加了 ObservationRegistry 仪器基础设施。当注入 ObservationRegistry 时,AbstractMessageHandler 现在会发出 CONSUMER 观测值,而不仅仅是 Timer。在异步和分布式消息通道上必须使用 ObservationPropagationChannelInterceptor,以便在生产者到消费者之间传播 Observation 以继续追踪。

  • IntegrationFlows 工厂现在已弃用,取而代之的是直接迁移到 IntegrationFlow 接口的相同功能。

  • RMI 模块已完全移除,以支持其他更安全的网络协议。

  • Apache Camel 支持 - 新增了 spring-integration-camel 模块。其 CamelMessageHandler 实现旨在更方便地从 Spring Integration 流中调用 Apache Camel 路由。它基于 Camel 的 ProducerTemplate,可以执行 InOnlyInOutInOptionalOut 交换,将 Spring Integration 消息传递到/从 Apache Camel 路由。

  • 所有消息传递注解(@ServiceActivator@Transformer@Splitter 等)现在都是 @Repeatable,因此您可以在不同的集成流中使用同一个 POJO 方法。

  • IntegrationFlowlog() 操作符现在是非终止性的——其在流末尾的歧义性已解决,现在即使没有 log() 操作符,流的行为也保持不变。

  • RedisLockRegistry 现在可以工作在 pub-sub 模式下,以便在可能的情况下缓解忙等问题,并且在 pub-sub 通知时可以立即获取锁。

另外,请参阅 迁移指南,了解框架及其模块中的重大更改。

在我们十月发布候选版本之前,请尝试一下,欢迎提供任何反馈!

今年十二月在 SpringOne 上与您见面,讨论这些以及其他 Spring Integration 功能!

祝好, 
Artem

项目主页 | GitHub Issues | 贡献指南 | 帮助 | 聊天

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看所有