Changes between 6.1 and 6.2
New Components
Debezium Inbound Channel Adapter
基于 Debezium 引擎的变更数据捕获 (CDC) 通道适配器,它允许捕获数据库变更事件,将它们转换为消息,并将这些消息流式传输到出站通道。有关详细信息,请参阅 Debezium Support。
General Changes
-
<poller>
和@Poller
注释现在支持对于fixed-delay
、fixed-rate
和initial-delay
选项的“ISO 8601”持续时间格式。有关详细信息,请参阅 Polling Consumer。 -
Java、Groovy 和 Kotlin DSL 现在在
IntegrationFlowDefinition
中拥有特定于上下文的在方法,它带有单个Consumer
参数,可以用一个构建器和可读选项来配置一个端点及其处理程序。例如,请参见 Java DSL Chapter 中的transformWith()
、splitWith()
。 -
一个新的
spring.integration.endpoints.defaultTimeout
全局属性已经引入,用来覆盖应用程序中所有端点的默认 30 秒超时。请参见 Global Properties 以了解更多信息。 -
Java DSL 提供的
@MessagingGateway
和GatewayEndpointSpec
现在公开了MessagingGatewaySupport
的内部MethodInvocationGateway
扩展的errorOnTimeout
属性。请参见 Gateway Behavior When No response Arrives 以了解更多信息。 -
LockRegistry
提供模板类 API,在锁定时执行所提供的任务。请参见 Distributed Locks 以了解更多信息。 -
轮询端点的默认触发器现在是一个带有 1 秒固定延迟时期的
PeriodicTrigger
实例;之前,默认值为 10 毫秒。请参见 Polling Consumer 以了解更多信息。
WebSockets Changes
-
对于服务器和客户端 WebSocket 容器,发送缓冲区溢出策略现在可以在
IntegrationWebSocketContainer
中用send-buffer-overflow-strategy
通过 XML 进行配置。当会话的出站消息缓冲区达到所配置的限制时,此策略决定行为。请参见 WebSockets Support 以了解更多信息。
Apache Kafka Support Changes
KafkaMessageSource
现在从使用者属性中提取 ErrorHandlingDeserializer
配置,并从失败的记录头中重新抛出提取的 DeserializationException
。请参阅 Kafka Inbound Channel Adapter 了解更多信息。
JDBC Support Changes
JdbcMessageStore
、JdbcChannelMessageStore
、JdbcMetadataStore
和 DefaultLockRepository
实现 SmartLifecycle
,并在各自的表上执行 SELECT COUNT
查询,通过 start()
方法确保目标数据库中存在必需的表(根据提供的前缀)。PostgresChannelMessageStoreQueryProvider
现在为轮询查询提供单 DELETE…RETURNING
语句。为此,ChannelMessageStoreQueryProvider
公开 isSingleStatementForPoll
选项,它从 JdbcChannelMessageStore
咨询。有关详细信息,请参阅 JDBC Message Store。
MongoDB Support Changes
AbstractConfigurableMongoDbMessageStore
中引入了一个新选项 setCreateIndexes(boolean)
以禁用自动索引创建。请参阅 MongoDB Message Store 了解示例。
Remote Files Support Changes
FtpLastModifiedFileListFilter
、SftpLastModifiedFileListFilter
和 SmbLastModifiedFileListFilter
已相继引入,以便针对 FTP
、SFTP
和 SMB
的最后修改策略允许文件过滤。请参阅 FTP Inbound Channel Adapter、SFTP Inbound Channel Adapter 和 SMB Inbound Channel Adapter 了解更多信息。
SFTP Support Changes
一个新的 DefaultSftpSessionFactory.createSftpClient(…)
方法已引入,以支持在重写时自定义 SftpClient
。请参阅 SFTP Session Factory 了解更多信息。
Security Support Changes
spring-integration-security
模块 SecurityContextPropagationChannelInterceptor
中的最后一个类已被弃用,取而代之的是移动到 spring-security-messaging
模块的类似类。有关详细信息,请参阅 Security in Spring Integration。