公布 Spring Cloud Stream Horsham (3.0.0.RELEASE) 发布

工程 | Oleg Zhurakousky | 2019 年 11 月 25 日 | ...

我们很高兴宣布 Spring Cloud Stream Horsham (3.0.0.RELEASE) 发布列车已发布,它作为即将发布的 Spring Cloud Hoxton.RELEASE 的一部分提供,并基于 Spring Boot 2.2.x 和 刚刚发布的 Spring Cloud Function 3.0.0.RELEASE 构建。

Spring Cloud Stream Horsham.RELEASE 模块已可在 Maven Central 仓库中使用。

快速亮点

正如在此公告之前的这些文章(解密和简化函数式和响应式Stream 和 Spring Integration 以及 事件路由)中所提到的,本次发布的核心主题是 函数

从历史上看,Spring Cloud Stream 暴露了基于注解的配置模型,要求用户了解并提供大量样板信息,而这些信息原本可以很容易地推断出来。您可以在这里阅读更多详细信息,但随着本次发布以及后续的 Spring Cloud Functions 发布,情况已不再如此。

Stream 应用只是一个 Boot 应用!

@SpringBootApplication
public class SampleApplication  {
    @Bean
    public Function<String, String> uppercase() {
        return value -> value.toUpperCase();
    }
}

是的,上面是一个完全功能的 Spring Cloud Stream 应用。

显著特性和增强功能

大多数显著特性和增强功能旨在强调我们对函数式编程模型的承诺;

  • 路由函数 (Routing Function) - 它有效地对应于 @StreamListener 注解的 condition 属性所提供的相同(甚至更多)功能。更多详情请参阅 事件路由 (Event Routing)

  • 函数的多个绑定 (Multiple bindings with functions)(多个消息处理器)- 更多详情请参阅一个应用中的 多个函数 (Multiple functions)

  • 函数元数 (Function arity)(具有多个输入/输出的函数 - 可订阅或指向多个目标的单个函数)- 更多详情请参阅 具有多个输入和输出参数的函数 (Functions with multiple input and output arguments)

  • 对响应式编程的原生支持 (Native support for reactive programming) - 从 v3.0.0 开始,我们不再分发 spring-cloud-stream-reactive 模块,而是依赖于 spring cloud function 提供的原生响应式支持。为了向后兼容,您仍然可以从旧版本引入 spring-cloud-stream-reactive。

  • Schema Registry (模式注册中心) 模块已迁移至一个独立项目

欲了解更多信息,您还应该查看更新的用户指南

Kafka Streams 中的函数式支持

Kafka Streams binder 现在支持基于一流函数的编程模型,您可以使用此模型基于 java.util.function 支持来编写您的 Kafka Streams 应用。这进一步减少了应用需要编写的样板代码,让开发者能够专注于业务逻辑。更多详情请访问 函数式风格 (Functional Style) 部分。Soby ChakoSpring Cloud Stream Kafka binder 的负责人)计划撰写一系列专门文章来介绍所有新特性。

一如既往,我们欢迎反馈和贡献,请通过 StackoverflowGitHubGitter 与我们联系。

获取 Spring 新闻通讯

订阅 Spring 新闻通讯,保持联系

订阅

领先一步

VMware 提供培训和认证,助力您的职业发展。

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

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

查看全部