繁体   English   中英

Amazon S3 是否支持多文件原子上传?

[英]Does Amazon S3 support multi-file atomic uploads?

我正在开发一个针对亚马逊 S3 的系统。 我正在使用 S3 的 .NET SDK 在 C# 中执行此操作。

我想一次将多个文件上传到 S3,但如果任何一个文件失败,我希望所有文件都失败。 我可以这样做吗? 如何?

SDK 的 TransferUtility.UploadDirectory 是否对目录进行原子上传,如果目录中的任何文件上传失败,那么它们都会失败?

如果它不进行原子上传,那么我需要有代码自己管理它; 如何使用 TransferUtility.UploadDirectory 了解哪些文件成功以及哪些文件失败?

感谢您的任何帮助或指导。

好吧,似乎 TransferUtility 方法是提供很少反馈的相当高级的辅助类型方法,并且 UploadDirectory 不包含任何原子性逻辑(对于多个文件,S3 也没有,这是真正需要发生的良好原子性)。

因此,需要某种类型的最终一致性队列来确保事情得以完成。 S3 以原子方式处理的多文件上传机制将非常方便,也许他们正在研究它,但他们目前似乎没有这个功能。

不,你不能这样做。 S3 不提供任何用于多对象上传的 API。 您可以做的最好的事情是在您的客户端中实现这一点(如果一次上传失败,请删除所有已上传的对象),但这当然不是原子的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM