【发布时间】:2021-11-04 10:19:10
【问题描述】:
我们在基于微服务的应用程序中使用 Dapr PubSub;我们打算使用 Azure ServiceBus 作为生产中的支持服务。
当我们尝试处理消息时,如果其他服务之一或数据库不可用,那么我们会抛出异常,触发 Dapr 中的重试。我们希望它是健壮的,这样如果依赖关系只是暂时关闭,消息仍然会得到适当的处理。
问题在于它重试真的很快。有没有办法降低重试的速度,使其更像 Dapr 处理微服务之间的请求,在每次失败时增加重试之间的间隔。我们不希望它在快速重试时占用太多资源,而且它对时间要求不高;多花几分钟比不完成更重要。
我们找到了一种方法来限制重试的次数,这样它就不会在消息无效时永远重试,但不是限制重试的方法。
在这种情况下是否可以限制重试次数?
我们在 Linux 容器中的 AKS 上托管的 .Net 5 / Asp.Net Core 中使用 Dapr API。
【问题讨论】:
-
你可以在 GitHub 上提出这个问题:azure-sdk-for-net、dapr/dotnet-sdk 或Dapr Community
标签: c# azureservicebus publish-subscribe .net-5 dapr