2015-09-27 84 views
0

使用Amazon REST API,是否可以通过单个操作下载多个文件(可能在一个Bucket中)? 例如要压缩所有对象并将它们作为一个文件下载?使用Amazon S3的单个操作下载多个对象

请注意,我正在寻找操作效率和定制解决方案。 例如,我是从S3下载每个单独的文件并自己创建ZIP文件,对于1.5MB大小的100个文件,操作可能需要长达40秒,我正在寻找一种解决方案,允许我在少于10秒。

回答

1

在S3中没有可以做到这一点的REST调用。

毫无疑问,传输带宽不可能占用您的进程所花费的大部分挂钟时间。

最可能的解决方案是使用多个线程或异步I/O(取决于您的语言和环境)以并行组的形式将请求发送到S3,并在所有所需对象成功完成时结合结果牵强。当然,如果你现在正在做的不是重复使用用户代理的连接,以便利用HTTP keep-alive,那么如果你可以启用该功能,你应该看到一些性能改进避免不必要的重复连接设置(可能还有SSL协商)。