24. 2.0 有什么新内容?

Spring Cloud Stream 引入了许多新的 features,增强功能和更改。以下部分概述了最值得注意的部分:

24.1 新 Features 和组件

24.2 值得注意的增强功能

此 version 包括以下显着的增强功能:

24.2.1 Actuator 和 Web 依赖项现在都是可选

此更改减少了 event 中已部署的 application 的占用空间,既不需要 actuator 也不需要 web 依赖项。它还允许您通过手动添加以下依赖项之一在 reactive 和常规 web 范例之间切换。

以下清单显示了如何添加传统的 web framework:

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
</dependency>

以下清单显示了如何添加 reactive web framework:

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-webflux</artifactId>
</dependency>

以下列表显示了如何添加 actuator 依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

24.2.2 Content-type 谈判改进

verion 2.0 的核心主题之一是围绕 content-type negotiation 和消息转换的改进(在一致性和 performance 方面)。以下摘要概述了该领域的显着变化和改进。有关详细信息,请参阅“第 30 章,Content Type Negotiation”部分。另外这篇博文包含更多细节。

24.3 值得注意的弃用

自 version 2.0 起,以下项目已被弃用:

24.3.1 Java 序列化(Java Native 和 Kryo)

JavaSerializationMessageConverterKryoMessageConverter暂时保留。但是,我们计划在未来将它们从核心软件包和支持中移除。这种弃用的主要原因是 flag type-based,language-specific 序列化可能在分布式环境中引起的问题,其中生产者和消费者可能依赖于不同的 JVM 版本或者具有不同版本的支持 libraries(即 Kryo)。我们还想提请注意消费者和生产者甚至可能不是 Java-based 的事实,因此多语言样式序列化(i.e.,JSON)更适合。

24.3.2 已弃用类和方法

以下是显着弃用的快速摘要。见相应的{。 54} [55]了解更多细节。

public interface Sample {
	String OUTPUT = "sampleOutput";

	@Output(Sample.OUTPUT)
	MessageChannel output();
}

本节详细介绍了如何使用 Spring Cloud Stream。它涵盖了 creating 和 running stream applications 等主题。

首页