首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在.NET C#中取消长期运行的亚马逊冰川文件上传操作

如何在.NET C#中取消长期运行的亚马逊冰川文件上传操作
EN

Stack Overflow用户
提问于 2012-09-24 15:08:02
回答 1查看 1.1K关注 0票数 3

我是亚马逊AWS和Glacier的新手。我正在尝试编写一个基于WPF Windows的C#客户端,将我的归档备份数据上传到冰川云中。但是,API参考似乎没有提供取消命令。只有上传,下载,列表。

我尝试做的是使用TPL异步地运行每个上传操作(对于大文件,这可能需要1个小时或更长时间)。然而,我希望上传是可取消的,这是.NET 4.5可以很好地支持的,但Amazon API不支持。

有没有办法做到这一点呢?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-28 14:51:22

Amazon Glacier (顺便说一下,Amazon S3也是如此)中处理场景的推荐方法。是通过分块上传的方式分块上传档案,请参阅Uploading an Archive in Amazon Glacier

根据您上传的数据大小,亚马逊冰川提供以下选项:

  • Uploading大型档案分块上传(Multipart Upload) -在单个操作中,您可以上传大小为1字节到最大4 GB的档案。然而,我们鼓励亚马逊冰川客户使用分块上传来上传大于100MB的档案。 ...emphasis mine
  • Upload archives in parts -使用Multipart upload ,您可以上传最大约40,000 GB (10,000 *4 GB)的大型档案。

Uploading Large Archives in Parts (Multipart Upload)提供了有关后者的详细信息,特别是关于完成(或中止)多部分上传的详细信息

上传完所有归档部分后,即可使用complete操作。..。

如果中止分块上传,则不能使用该分块上传ID上传更多的分块。与中止的分块上传关联的任何分块所消耗的所有存储空间都将被释放。如果有任何部件上传正在进行中,即使在您中止之后,它们仍然可能成功或失败。强调我的

因此,您仍然不能中止正在进行的部件的上传,因此,要获得所需的用户体验和/或减少网络带宽,关键是选择足够小的部件大小。

根据您的用例,您可能还希望签入List Multipart Uploads (GET multipart-uploads)

此分块上传操作列出了指定文件库正在进行的分块上传。正在进行的分块上传是指已经由Initiate Multipart Upload (POST multipart-uploads)请求发起,但尚未完成或中止的分块上传。...

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12560345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档