如何在将blob下载到本地存储时提高性能

时间:2015-03-27 05:37:01

标签: azure azure-storage-blobs

我有下面的代码来下载blob存储中的JSON文件。实际上下面的代码需要一分多钟才能将其下载到本地文件夹中,请建议我通过改进以下代码来提高性能。



CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference("containername");
CloudBlockBlob blockBlob2 = container.GetBlockBlobReference(“jsonfile_name"); 
string jsonString = string.Empty;

using (var memoryStream = new MemoryStream())
{
blockBlob2.DownloadToStream(memoryStream);
jsonString = System.Text.Encoding.UTF8.GetString(memoryStream.ToArray());
using (FileStream fs = new FileStream(localfolderPath, FileMode.Create))
{
using (StreamWriter writer = new StreamWriter(fs))
{
writer.Write(jsonString);
}
}
}




1 个答案:

答案 0 :(得分:0)

您可以尝试拨打DownloadToFile作为一项小改进,但这仍然无法解释下载时间超过一分钟。您应该调查客户端或网络上是否有问题。如果启用Azure存储日志记录,则可以比较服务器延迟和端到端延迟,以查看Blob服务是故障还是客户端/网络。有关此问题的更多信息,我建议您查看我们的Monitor, diagnose, and troubleshoot Microsoft Azure Storage文章。