【问题标题】:spring integration - orchestrating series of rest callsspring integration - 编排一系列休息调用
【发布时间】:2019-07-01 05:04:49
【问题描述】:

我有一个需要执行以下操作的用例:

  • 收到请求后,调用服务 A、B、C、D,然后发送响应
  • 在每个服务调用之间,记录调用前后的记录
  • 可以在 A 之后调用 B 和 C,但必须在 B 和 C 都完成后调用 D。
  • 为所有错误处理和发送响应实现通用错误通道
  • 能够跳过步骤或从给定步骤开始。用于识别步骤的元数据将被请求。

目前我已经通过在每个步骤之间设置一个消息通道来实现,这意味着每个步骤都从其入站通道接收请求,一旦完成任务,它就会在下一步的入站通道上发布。前后记录是通过wireTap实现的。

最好的方法是什么?

谢谢你,

【问题讨论】:

    标签: spring-integration spring-integration-dsl


    【解决方案1】:
    1. 通过WireTap 记录。你明白了!
    2. “通用错误通道” - 入站网关有一个errorChannel 选项来捕获所有下游异常并处理它们。
    3. “B & C 可以在 A... 之后调用”。听起来像RecipientListRouter - 所以你向所有订阅的频道发送相同的消息。虽然您也可以使用PublishSubscribeChannel
    4. 您可以使用Filter 及其拒绝通道实现跳过逻辑。尽管router 也可以为您解决问题。

    【讨论】:

      猜你喜欢
      • 2021-05-29
      • 1970-01-01
      • 1970-01-01
      • 2016-04-02
      • 1970-01-01
      • 1970-01-01
      • 2019-02-01
      • 2016-05-24
      • 1970-01-01
      相关资源
      最近更新 更多