0

我是 Polly 构建重试策略的新手,我注意到的是,如果 Polly 遇到特定异常,它将一遍又一遍地执行相同的方法。但是,Polly 是否可以递归地使用不同的方法重试?这是我当前工作流程的一个示例:

  • 我有一个项目列表作为批处理操作写入数据库,但我不知道列表的总数据大小。
  • 我的数据库写入操作会有一定大小的限制,比如说它的最大大小为 2 MB。
  • 假设我的输入列表包含 5,000 项,那么当它超过我的数据库写入操作限制时,会引发异常。我想做的是将 5000 个项目分成 2 个子集,每个子​​集有 2,500 个项目。然后尝试再次使用这两个子集编写...
  • 如果我的 2,500 个项目的两个子集仍然超出限制,我会将 2500 个分成两半,每个子集 1,250 个项目,然后再次尝试相同的操作。

所以基本上我的重试策略将基于递归方式执行,当遇到异常时,拆分数据集并重试,然后继续......但是,使用Polly我找不到递归调用我的执行方法的方法......

4

1 回答 1

0

Polly 的重试策略旨在重试相同的委托调用。递归不是 Polly 目标的用例。

于 2019-09-16T16:34:37.573 回答