此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Integration 6.4.3! |
6.1 和 6.2 之间的更改
新组件
Debezium 入站通道适配器
基于 Debezium 引擎的变更数据捕获 (CDC) 通道适配器,允许捕获数据库更改事件,将其转换为 Messages 并将其流式传输到出站通道。 有关更多信息,请参阅 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
从 Consumer 属性和 re-throws 中获取的配置DeserializationException
从失败的记录标头中提取。
有关更多信息,请参阅 Kafka 入站通道适配器。
JDBC 支持更改
这JdbcMessageStore
,JdbcChannelMessageStore
,JdbcMetadataStore
和DefaultLockRepository
实现SmartLifecycle
并执行SELECT COUNT
query 中,在各自的表上,在start()
方法确保目标数据库中存在所需的表(根据提供的前缀)。
这PostgresChannelMessageStoreQueryProvider
现在提供单个DELETE…RETURNING
用于轮询查询的语句。
为此,ChannelMessageStoreQueryProvider
公开isSingleStatementForPoll
选项,该选项可从JdbcChannelMessageStore
.
有关更多信息,请参阅 JDBC Message Store。
MongoDB 支持更改
新选项setCreateIndexes(boolean)
已引入AbstractConfigurableMongoDbMessageStore
以禁用自动索引创建。
有关示例,请参阅 MongoDB Message Store。
远程文件支持更改
FtpLastModifiedFileListFilter
,SftpLastModifiedFileListFilter
和SmbLastModifiedFileListFilter
已引入以允许根据上次修改策略分别对FTP
,SFTP
和SMB
.
有关更多信息,请参阅 FTP 入站通道适配器、SFTP 入站通道适配器和 SMB 入站通道适配器。
SFTP 支持更改
新的DefaultSftpSessionFactory.createSftpClient(…)
方法以支持自定义SftpClient
被覆盖时。
有关更多信息,请参阅 SFTP Session Factory 。
安全支持更改
中的最后一个类spring-integration-security
模块SecurityContextPropagationChannelInterceptor
已被弃用,取而代之的是移至spring-security-messaging
模块。
有关更多信息,请参见 Spring Integration 中的安全性。