繁体   English   中英

CloudTableClient客户端超时

[英]CloudTableClient client side timeout

side timeout? 使用CloudTableClient时,是否可以指定端超时?

TableRequestOptions RetryPolicy和ServerTimeout控制重试尝试的次数,尝试之间的延迟以及存储服务端超时,但似乎并未涵盖客户端的每次尝试超时(如HttpClient.Timeout属性)。

我对依赖ServerSideTimeout的担心是连接到实际服务器的延迟。

使用CloudTableClient时,是否可以指定客户端超时?

TableRequestOptions的MaximumExecutionTime属性可以帮助我们为请求的所有潜在重试指定最大执行时间,包括客户端和服务器端使用的时间。

tableClient.DefaultRequestOptions.MaximumExecutionTime = new TimeSpan(0, 0, 0, 0, 100);

如果在特定时间内无法处理请求,则会引发异常。

Microsoft.WindowsAzure.Storage.StorageException: 'The client could not finish the operation within specified timeout.'

就像HttpClient.Timeout属性

HttpClient的Timeout属性还指定响应返回之前的所有执行时间。

我希望找到一个重试超时。

我建议您使用MaximumExecutionTime。 如果需要客户端DNS解析超时,则可以获取或设置ServicePointManager的DnsRefreshTimeout属性。

ServicePointManager.DnsRefreshTimeout = 4*60*1000; // 4 minutes

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM