领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我很高兴地宣布 Spring Integration 4.3.0.M2
现已从 Spring 里程碑存储库 中获得。此版本修复了大约 50 个 JIRA 并包含近 100 个 提交。
感谢所有做出贡献的人。特别是 Spring Cloud Stream 团队,他们对 Spring Integration 的广泛使用影响了项目的走向。
自 第一个里程碑 以来的一些关键特性
graph
公开,可用于可视化集成应用程序的当前状态。在 Web 容器中运行时,@EnableIntegrationGraphController
注解以及 IntegrationGraphServer
bean 会创建一个服务,用于通过 REST 协议(例如 JSON 表示法)检索模型和状态。{
"nodes": [
{
"nodeId": 1,
"name": "nullChannel",
"componentType": "channel",
},
{
"nodeId": 2,
"name": "errorChannel",
"componentType": "publish-subscribe-channel",
},
{
"nodeId": 3,
"name": "_org.springframework.integration.errorLogger",
"componentType": "logging-channel-adapter",
"output": null,
"input": "errorChannel"
}
],
"links": [
{
"from": 2,
"to": 3
}
]
}
延续 Spring Integration 的传统,消息通道在此模型中被表示为一等公民(节点),而不仅仅是节点之间的链接。此外,当启用统计信息(@EnableIntegrationManagement
或 <int:management />
)时,对象图中的每个节点都包含这些统计信息(消息计数、响应时间等)。
持久性 MessageStore
现在支持 MessageGroup
检索的 Lazy-Load
算法(默认启用)。在处理具有大型持久化组以及聚合等操作时,这会带来显著的性能提升。
服务激活器现在支持 async
选项。如果服务返回 ListenableFuture<?>
且 async
为 true
,则调用线程会立即释放,并且回复消息会在完成 future 的线程(来自您的服务)上发送。基于此基础,我们还提供了一个 AsyncAmqpOutboundGateway
和 JmsOutboundGateway
的 async
模式,其中下游流在回复侦听器容器线程上运行。
XMPP 适配器现在支持 扩展
(XEP)。因此,例如,您可以更轻松地与 Google Cloud Messaging (GCM) 进行交互。
<int-xmpp:inbound-channel-adapter id="xmppInboundAdapter"
payload-expression="getExtension('google:mobile:data').json"/>
...
<bean id="gcmExtensionProvider" class="org.jivesoftware.smackx.gcm.provider.GcmExtensionProvider"/>
<int-xmpp:outbound-channel-adapter id="xmppOutboundAdapter"
extension-provider="gcmExtensionProvider"/>
Groovy 脚本现在可以使用 compile-static
或 compiler-configuration
进行配置,以实现改进的性能或为目标 AST 提供一些特殊的自定义。
WatchServiceDirectoryScanner
进行了多项改进。其逻辑已通过 use-watch-service
标志直接移至 FileReadingMessageSource
。此外,我们可以指定要侦听目录树上的 WatchEventType
。此外,StandardWatchEventKinds.ENTRY_DELETE
事件被视为 ResettableFileListFilter.remove()
操作,例如从 AcceptOnceFilteListFilter
中删除文件。
已实现更多 通道延迟绑定 的用例。例如在 WireTap
中,这导致了
Spring Integration Java DSL 中的 MessageChannelSpec.wireTap()
功能。
请参阅 新增功能 和 JIRA 发布说明,以获取有关所包含更改的完整信息。
我们预计将在 5 月中旬发布最终候选版本,并在 5 月底发布正式版本。
因此,现在是您最后一次机会请求您认为框架中缺少的任何功能。接下来(2017 年)是 5.0,它将需要 Java 8。
我们欢迎任何反馈、问题或帮助,使用通常的机制
如果您碰巧在 5 月份加入了在巴塞罗那举行的 Spring I/O 大会,请不要错过 Gary Russel 关于 Spring Integration 与 Spring Boot 的演讲。此外,SpringOne Platform(8 月初,拉斯维加斯)的注册最近已经开始,如果您想享受早鸟票价,可以考虑参加。在那里,您可以与 Gary 和我见面,讨论 Spring Integration 中的新内容!