此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Integration 6.5.1! |
6.1 和 6.2 之间的更改
新组件
Debezium 入站通道适配器
基于 Debezium 引擎的更改数据捕获 (CDC) 通道适配器,允许捕获数据库更改事件,将它们转换为消息并将其流式传输到出站通道。 有关更多信息,请参阅 Debezium 支持。
一般更改
-
的 XML 配置
<poller>
和@Poller
注释现在支持 ISO 8601 持续时间格式fixed-delay
,fixed-rate
和initial-delay
选项。 有关详细信息,请参阅轮询消费者。 -
Java、Groovy 和 Kotlin DSL 现在在
IntegrationFlowDefinition
与单个Consumer
参数,以使用一个构建器和可读选项配置端点及其处理程序。 例如,请参阅transformWith()
,splitWith()
在 Java DSL 章节中。 -
一个新的
spring.integration.endpoints.defaultTimeout
引入了 global 属性,以覆盖应用程序中所有端点的默认 30 秒超时。 有关详细信息,请参阅全局属性。 -
这
@MessagingGateway
和GatewayEndpointSpec
Java DSL 现在公开errorOnTimeout
内部的属性MethodInvocationGateway
扩展MessagingGatewaySupport
. 有关详细信息,请参阅未到达响应时的网关行为。 -
这
LockRegistry
提供类似模板的 API,用于在锁定时执行提供的任务。 有关详细信息,请参阅分布式锁。 -
轮询端点的默认触发器现在是
PeriodicTrigger
具有 1 秒固定延迟期的实例;以前,默认值为 10 毫秒。 有关详细信息,请参阅轮询消费者。
WebSockets 更改
-
对于服务器和客户端 WebSocket 容器,发送缓冲区溢出策略现在可以在
IntegrationWebSocketContainer
并在 XML 中通过send-buffer-overflow-strategy
. 此策略确定会话的出站消息缓冲区达到配置限制时的行为。 有关更多信息,请参阅 WebSockets 支持。
Apache Kafka 支持变更
这KafkaMessageSource
现在提取一个ErrorHandlingDeserializer
从使用者属性和重新抛出DeserializationException
从失败的记录头中提取。
有关更多信息,请参阅 Kafka 入站通道适配器。
JDBC 支持更改
这JdbcMessageStore
,JdbcChannelMessageStore
,JdbcMetadataStore
和DefaultLockRepository
实现SmartLifecycle
并执行SELECT COUNT
查询,在各自的表中,在start()
方法来确保目标数据库中存在所需的表(根据提供的前缀)。
这PostgresChannelMessageStoreQueryProvider
现在提供单DELETE…RETURNING
用于轮询查询的语句。
为此,该ChannelMessageStoreQueryProvider
公开isSingleStatementForPoll
选项,该选项可从JdbcChannelMessageStore
.
有关更多信息,请参阅 JDBC 消息存储。
MongoDB 支持变更
新选项setCreateIndexes(boolean)
已引入AbstractConfigurableMongoDbMessageStore
以禁用自动索引创建。
有关示例,请参阅 MongoDB 消息存储。
远程文件支持更改
FtpLastModifiedFileListFilter
,SftpLastModifiedFileListFilter
和SmbLastModifiedFileListFilter
已引入以允许文件分别基于最后修改的策略进行过滤FTP
,SFTP
和SMB
.
有关详细信息,请参阅 FTP 入站通道适配器、SFTP 入站通道适配器和 SMB 入站通道适配器。
SFTP 支持变更
一个新的DefaultSftpSessionFactory.createSftpClient(…)
方法已引入以支持自定义SftpClient
重写时。
有关更多信息,请参阅 SFTP 会话工厂。
安全支持更改
最后一类spring-integration-security
模块SecurityContextPropagationChannelInterceptor
已被弃用,取而代之的是将类似类移至spring-security-messaging
模块。
有关更多信息,请参阅 Spring Integration 中的安全性。