使用RetryPolicy与表存储有关的几个问题,
TimeSpan.FromSeconds(1)); = ctx.RetryPolicy = RetryPolicies.Retry(5,
人们通常对retryCount和TimeSpan使用什么值?我看到5秒重试和1秒TimeSpan是一个流行的选择,但是每个5秒重试1秒是不是太长了?
谢谢,
雷。
发布于 2010-12-28 17:54:21
我认为这在很大程度上取决于您的应用程序和需求。ATS的超时错误非常少发生,以至于如果重试策略不会伤害到位,而且无论如何也很少被使用。但是,如果有可疑的事情发生,它可以避免你不得不调试奇怪的错误。
现在,我建议您在开始时根本不启用RetryPolicy,而是进行跟踪,这样您就可以看到ATS持久化的任何问题。一旦您稳定下来,放置一个RetryPolicy也许是解决ATS方面的一些运行时故障的好主意。只需确保您没有用RetryPolicy掩盖自己的问题。
发布于 2016-03-10 17:39:24
如果您的客户端与网页一样面向用户,您可能希望在每次重试之间使用具有短等待(毫秒)的线性重试,如果您的客户端实际上是面向后端服务的非用户,那么您很可能希望使用指数重试,以避免表存储服务因负载过高而导致5xx错误超载。
使用最新的Azure,如果不通过TableRequestOptions在表请求中定义任何重试策略,则使用默认重试策略,即指数重试。sdk对它认为可检索的错误总共进行3次重试,如果所有重试失败,则总共需要20秒钟。
https://stackoverflow.com/questions/4548065
复制相似问题