【问题标题】:CloudBlockBlob.DownloadTextAsync call sometimes fails with outofmemory exceptionCloudBlockBlob.DownloadTextAsync 调用有时会因内存不足异常而失败
【发布时间】:2017-11-21 22:36:51
【问题描述】:

问题是如何确保上述调用始终成功。我应该限制上传的 blob 的大小吗?我应该在上传之前检查 blob 容器的大小吗?容器和块 blob 的限制是什么。 Blob 存储新手上传和下载块 Blob 的最大限制是什么。

我使用的代码

       protected async Task<string> ReadBlockBlobText(CloudBlockBlob blockBlob)
    {
        var exists = await blockBlob.ExistsAsync();
        if ( exists )
            return await blockBlob.DownloadTextAsync();

        return string.Empty;
    }

【问题讨论】:

  • 您尝试下载的 blob 有多大?
  • 能否分享一下您如何使用 CloudBlockBlob.DownloadTextAsync 方法的代码?您能否告诉我们您在遇到此错误时下载的 blob 存储的大小?您的应用程序是否在 32 位 Windows 上运行?
  • 大小为 108mb。这个测试第一次通过。第二次失败。通过和失败是随机的。它是 64 位机器。

标签: azure azure-blob-storage


【解决方案1】:

您的 blob 可能超出了应用程序的内存限额,请尝试使用 Stream 代替 DownloadToStreamAsync 方法并懒惰地阅读。

【讨论】:

猜你喜欢
  • 2013-03-14
  • 2022-01-08
  • 1970-01-01
  • 1970-01-01
  • 2014-01-06
  • 2021-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多