我正在使用ruby aws/s3庫從Amazon S3中檢索文件。我按照文檔流式傳輸一個對象並將其寫入文件(每100個塊調試一次以確認進度)Ruby:流式傳輸大型AWS S3對象凍結
這適用於小文件,但隨機凍結VPS Ubuntu上下載大文件(150MB)。在慢速連接上從我的Mac中獲取相同的文件(150MB)可以很好地工作。
掛起時沒有錯誤拋出,調試輸出的最後一行是'Finished chunk'。我已經看到它在凍結之前寫入了100到10,000個大塊。
任何人都會遇到這個問題,或者對原因可能有什麼想法?
感謝
是掛起代碼:
i=1
open(local_file, 'w') do |f|
AWS::S3::S3Object.value(key, @s3_bucket) do |chunk|
puts("Writing chunk #{i}")
f.write chunk.read_body
puts("Finished chunk #{i}")
i=i+1
end
end