如何处理在传输过程中终止的集成流程
How to handle integration flows that terminated in transit
我们如何处理以下流程,当它终止时(可能是服务器在其中一个转换正在进行时死机)?
@Bean
public IntegrationFlow sampleFlow() {
return IntegrationFlows.from(httpAdapters.pushInbound())
.transform(transformer1)
.transform(transformer2)
.handle(messageHandler1)
.get();
}
有什么方法可以让 springboot 应用程序从中断处继续运行?最好的方法是什么?
鉴于此,我们正在尝试从 system1 -> system2 推送数据。系统 1 对 spring 集成进行了休息 api 调用(http 调用)。
最好的方法是在流程步骤之间保留消息。
为此,我们提供了 QueueChannel
和 ChannelMessageStore
以及针对目标数据库的各种实现:https://docs.spring.io/spring-integration/docs/current/reference/html/system-management-chapter.html#message-store
当然,最好的方法是使用事务性 存储,以便在失败时自动回滚。因此,下次您的流将从商店中提取消息进行处理。
我们如何处理以下流程,当它终止时(可能是服务器在其中一个转换正在进行时死机)?
@Bean
public IntegrationFlow sampleFlow() {
return IntegrationFlows.from(httpAdapters.pushInbound())
.transform(transformer1)
.transform(transformer2)
.handle(messageHandler1)
.get();
}
有什么方法可以让 springboot 应用程序从中断处继续运行?最好的方法是什么?
鉴于此,我们正在尝试从 system1 -> system2 推送数据。系统 1 对 spring 集成进行了休息 api 调用(http 调用)。
最好的方法是在流程步骤之间保留消息。
为此,我们提供了 QueueChannel
和 ChannelMessageStore
以及针对目标数据库的各种实现:https://docs.spring.io/spring-integration/docs/current/reference/html/system-management-chapter.html#message-store
当然,最好的方法是使用事务性 存储,以便在失败时自动回滚。因此,下次您的流将从商店中提取消息进行处理。