在 Service Fabric 应用程序中下载 2 GB 文件



我正在设计一个应用程序,该应用程序将支持上传和下载限制为2 GB的XML文件。我使用 Azure Blob 存储作为持久性存储来上传这些文件,然后下载它们。下面的一段代码抛出了内存不足异常:

var blob = this.GetBlockBlobReference(blobId, blobContainerName);
return await blob.DownloadTextAsync().ConfigureAwait(false);

另外,我不确定哪种方法会更快,更干净。

为了更快地下载/上传 blob,可以考虑使用 Microsoft Azure 存储数据移动库。此库专为高性能上传、下载和复制 Azure 存储 Blob 和文件而设计。

您可以通过以下代码设置并行线程:

// Setup the number of the concurrent operations
TransferManager.Configurations.ParallelOperations = 64;

然后分别使用TransferManager.UploadAsyncTransferManager.DownloadAsync方法上传/下载 Blob。

github中有一个上传的例子,您可以修改它以便轻松下载。

最新更新