gpt4 book ai didi

apache-nifi - 如何控制 nifi 中调用 HTTP 处理器的重试

转载 作者:行者123 更新时间:2023-12-03 23:18:25 24 4
gpt4 key购买 nike

例如调用HTTP处理器,如果重试关系是自己连接的,如果出现500相关错误,如何控制重试次数?

我想控制重试次数达到某个计数,例如5 并且在特定时间多次重试。 1 分钟后第一次重试,30 分钟后第二次重试,24 小时后第三次重试我想做的。

最佳答案

有一个公开的 Jira 案例 (NIFI-90) 讨论了自动惩罚和回退。同时,如果您想实现自己的退避,您可以将重试关系发送到最终路由回 InvokeHttp 处理器的流(或在重试计数达到最大值后丢弃)。回退周期可能如下所示:

InvokeHttp -[retry]-> UpdateAttribute -> RouteOnAttribute -[give up]-> (Drop)
^ |
| v
|------------------------------------------ (Delay)
  • UpdateAttribute :设置/增加“计数器/重试”属性和/或
    相关的“延迟量”属性。
  • RouteOnAttribute :检查计数器以查看是否已达到最大重试次数(例如 5 次),如果是,则将流文件发送到 (Drop),否则继续。 (Drop) 处理器可以是 UpdateAttribute 或自动终止其传出关系的东西,或某些错误处理/报告逻辑。
  • (延迟):这可能是 ExecuteScript基于当前重试计数和/或延迟量延迟流文件传输的处理器。或者,您可以使用 ControlRate ,但您需要反转“延迟量”以相应地设置 ControlRate 的属性(使用之前的 UpdateAttribute 增加 Rate Controlled 属性的值)。
  • 关于apache-nifi - 如何控制 nifi 中调用 HTTP 处理器的重试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43843191/

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