gpt4 book ai didi

java - 如何通过重试将 Java Spring Flow 转换为 Spring Integration Work Flow?

转载 作者:行者123 更新时间:2023-11-30 07:32:44 25 4
gpt4 key购买 nike

我在 Spring 组件类中有一个非常简单的方法

@Service("wsOrderCreationService")
public class WsOrderCreationServiceImpl implements WsOrderCreationService {
...
public void saveLedger(SdiOrderSkuLedger orderSkuLedger) {
sdiOrderSkuLedgerService.save(orderSkuLedger);
}

我想对此方法应用重试,但我无法使用 spring-retry 1.1.12,因为我的核心 Spring 版本是 3.0,较低版本的 spring-retry 不允许 XML 配置。我们在此应用程序中成功使用了带有重试功能的 Spring Integration,因此我正在考虑将此方法转换为 SI 工作流程。进行此转换的最佳方法是什么?

最佳答案

我猜你可以使用RequestHandlerRetryAdvice<request-handler-advice-chain>对于<service-activator> .

从另一边你可以构建类似 <gateway> 的东西对于一些service-interface并在某些服务中使用该接口(interface)作为集成前端。

因此,您需要的是 <gateway>它将消息发送到 <service-activator>RequestHandlerRetryAdvice对于某些需要重试逻辑的服务方法。

这就是如何回答您的特定问题。

从另一方面来看,Spring Retry 框架并不是为 XML 配置而设计的,因为它对于常规 <bean> 来说就足够简单了。定义。你应该只配置RetryOperationsInterceptor (及其依赖项)通过标准 Spring AOP 框架。

从那里,您不需要仅仅为了围绕一项服务进行简单的重试而引入 Spring Integration 层。

关于java - 如何通过重试将 Java Spring Flow 转换为 Spring Integration Work Flow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35857041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com