gpt4 book ai didi

Azure服务总线: Best way to implement exponential retry policy for failed to process messages

转载 作者:行者123 更新时间:2023-12-03 09:29:07 26 4
gpt4 key购买 nike

我不断地以查看模式接收消息,如果处理失败(不是传递),我就会放弃它们。但是,该消息立即再次可用并被再次接收以进行处理。它再次很快失败,并且在最大交付次数之后它就变成了死信。

有没有办法配置主题/订阅在放弃消息后等待消息发布?最好以指数方式。

当然,我也愿意通过代码提出建议。

最佳答案

无法在服务总线配置中设置指数退避。我遇到了同样的问题,并做了以下操作:

  1. 使消息出队,并将消息标记为已接收。
  2. 在 try/catch block 内执行处理。如果出现异常,则将新消息排入队列,并计划在将来的某个时间点传送。

我们已将服务总线消息队列有效负载包装在指定传递尝试次数的类中。我们将投递尝试次数乘以一个常数,然后将该数字添加到当前日期时间以供将来计划投递。在超过我们想要尝试的传递尝试次数后,我们明确地对消息进行死信。

编辑 2020 年 7 月 17 日考虑使用 Azure 持久任务框架,它内置了可自定义的重试策略。

关于Azure服务总线: Best way to implement exponential retry policy for failed to process messages,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46240105/

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