【发布时间】:2016-02-24 21:18:14
【问题描述】:
我有一个海量上传系统,我想做以下事情:
- 将数据块上传到服务器,服务器会将其作为未提交的块放在块 blob 上。
- 上传者对块/blob 实现一无所知。它只知道它正在存储大量数据。
- 服务器也无法在调用之间保留任何状态。
- 一旦所有的块都被上传(上传者在最后一个块上设置一个标志),服务器将:
- 获取 blob 上未提交块的列表(记住,它不能保存状态,所以它不能将这个列表保存在内存中)然后
- 调用提交它们 (PutBlockList)。 它们必须以正确的顺序提交。
但是从 API 返回的块的顺序并不是文档所说的顺序。
根据 Azure 存储 API 站点,
未提交的块列表从最近上传的块开始返回到最旧的上传块。 (https://msdn.microsoft.com/en-us/library/azure/dd179400.aspx,在底部的备注部分下)
但是,原始 API 调用和 Microsoft Azure 存储 SDK 都按字母顺序返回块,而不是按照它们以任何方式上传的顺序。
我是否阅读了错误的文档?这可能是 API 中的错误吗?本地存储模拟器也给出了相同的结果。
谢谢!
【问题讨论】:
标签: c# rest azure azure-storage azure-blob-storage