AmazonS3が巨大なファイルのマルチパートアップロードを追加したことは知っています。それは素晴らしいことです。私も必要なのは、ギガバイトプラスファイルのダウンロードの途中でエラーが発生した顧客向けのクライアント側の同様の機能です。
ブラウザにはある程度の再試行と再開が組み込まれていることはわかっていますが、巨大なファイルについて話しているときは、エラーの種類に関係なく、中断したところから再開できるようにしたいと思います。
何か案は?
ありがとう、ブライアン
独自のソリューションを構築する場合、S3は標準のHTTP「Range」ヘッダーをサポートします。
aria2c を使用します。プライベートコンテンツの場合、「GetPreSignedUrlRequest」を使用して、aria2cに渡すことができる一時的なプライベートURLを生成できます。
現在の状況に合わせて更新するだけで、S3はマルチパートGETとPUTをネイティブにサポートします。 https://www.youtube.com/watch?v=uXHw0Xae2ww (26:00までジップフォワード)。
注:Rubyユーザーのみ
Rubyからaws-sdk
gemを試して、ダウンロードしてください
object = AWS::S3::Object.new(...)
object.download_file('path/to/file.rb')
デフォルトでマルチパートの大きなファイルをダウンロードするためです。
5MBを超えるファイルは、マルチパート方式を使用してダウンロードされます
http://docs.aws.Amazon.com/sdkforruby/api/Aws/S3/Object.html#download_file-instance_method