2015-09-27 86 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協商)。