我正在C#中开发应用程序并使用Azure。我注意到,当我尝试加载大量斑点时,一些请求需要花费大约2分钟。通常下载时间是1-15秒。 奇怪的是,请求可能需要1-15秒或2分钟(它从来不是30秒,或1分钟等)。对我来说,看起来Azure具有某种节流或重试机制,但我不确定。2分钟延迟下载Azure blobs
什么导致2分钟延迟? 如何避免这种延迟?
CloudBlockBlob blob = this.GetBlobReference(key);
using(var msGet = new MemoryStream())
{
await this._ap.Do(() =>
{
var downloadToStreamAsync = blob.DownloadToStreamAsync(msGet);
return downloadToStreamAsync;
}).ConfigureAwait(false);
}
可以使用https://docs.microsoft.com/en-us/azure/storage/storage-performance-checklist#subheading16 https://docs.microsoft.com/en-us/azure/storage/storage-scalability-targets https://blogs.msdn.microsoft.com/mast/2014/08/02/how-to-monitor-for-storage-account-throttling/ – Lanorkin
@Lanorkin感谢您的帮助链接+1 – burzhuy
我从来没有见过这个。建议您使用azcopy工具尝试相同的下载并比较结果。这应该可以帮助您确定它是Azure限制还是可能与代码有关。 https://docs.microsoft.com/en-us/azure/storage/storage-use-azcopy – codingoutloud