https://docs.spring.io/spring-boot/docs/3.2.0/reference/htmlsingle/#messaging.spring-integration
Spring Boot 为使用 Spring Integration 提供了多种便利,包括 spring-boot-starter-integration
“Starter”。Spring Integration 提供了对消息传递以及其它传输(如 HTTP、TCP 等)的抽象。如果 Spring Integration 在你的类路径上可用,它将通过 @EnableIntegration
注解进行初始化。
Spring Integration 的轮询逻辑依赖于自动配置的 TaskScheduler
。默认的 PollerMetadata
(每秒轮询无限数量的消息)可以通过 spring.integration.Poller.*
配置属性进行自定义。
Spring Boot 还配置了一些由额外 Spring Integration 模块触发的功能。如果 spring-integration-jmx
也在类路径上,则消息处理统计信息将通过 JMX 发布。如果可用 spring-integration-jdbc
,则可以在启动时创建默认的数据库模式,如下所示:
spring.integration.jdbc.initialize-schema=always
如果 spring-integration-rsocket
可用,开发人员可以使用 “spring.rsocket.server.*
” 属性配置一个 RSocket 服务器,并让它使用 IntegrationRSocketEndpoint
或 RSocketOutboundGateway
组件来处理传入的 RSocket 消息。此基础架构可以处理 Spring Integration RSocket 通道适配器和 @MessageMapping
处理程序(只要配置了 "spring.integration.rsocket.server.message-mapping-enabled"
)。
Spring Boot 还可以使用配置属性自动配置 ClientRSocketConnector
:
# Connecting to a RSocket server over TCP
spring.integration.rsocket.client.host=example.org
spring.integration.rsocket.client.port=9898
# Connecting to a RSocket Server over WebSocket
spring.integration.rsocket.client.uri=ws://example.org