【发布时间】:2016-12-09 11:12:27
【问题描述】:
我有 Azure Blob 容器,每个容器有数百个 Blob。当通过 REST API 使用 GET LIST 命令查询文件列表时,我确实得到了一个列表,但它是一个包含许多附加信息的 XML,例如“最后修改”等。这使得每个文件的返回列表大约为 500 个字节。对于具有 200 个 Blob 的容器,仅用于获取该列表就需要 100 KB。这是非常低效的,尤其是因为文件本身只有大约 10 KB,而且我需要经常请求列表。
我在GET LIST 的文档中没有看到任何选项来返回更简单的列表。我只需要 blob 名称,没有完整的 URL 和任何其他信息,并且尽可能小和基本。对于短文件名,每个文件最多可以容纳 5 个字节。
有没有更有效的方法从 Azure Blob 获取文件列表?
至于我为什么需要这个:我有一个系统,其中几个用户可以同时上传 Blob,而其他用户很快就会下载特定的 Blob。
我考虑使用一个 Web 角色来告诉用户下载什么,但是当我使用 C# Blob API 列出 Blob 中的文件时,该 Web 角色是否会从 Blob 中产生相同的下载成本?价格对我们来说是一个重要的考虑因素,因为我们预计会有很多用户与之互动。
【问题讨论】: