gpt4 book ai didi

ruby-on-rails - 如何将大于 5GB 的文件上传到 Amazon S3?

转载 作者:数据小太阳 更新时间:2023-10-29 07:12:14 24 4
gpt4 key购买 nike

我目前正在使用带有 Carrierwave gem 的 Rails 3.2 将文件上传到 Amazon S3。现在我需要能够处理用户提交的大于 5GB 的文件,同时仍然使用 Carrierwave gem。 Carrierwave 或 Fog 是否有任何其他 gem 或分支可以处理 5GB 以上的文件上传到 S3?

编辑:我不想重写一个完整的 Rails 上传解决方案,所以像这样的链接没有帮助:https://gist.github.com/908875 .

最佳答案

我想出了如何做到这一点,并且现在可以正常工作了。在正确的 config/environment 文件中,添加以下内容以将文件以 100MB block 的形式发送到 Amazon S3:

CarrierWave.configure do |config|
config.fog_attributes = { :multipart_chunk_size => 104857600 }
end

由于 fog gem 内置了分段上传(感谢 Veraticus 指出),适当的配置属性只需要通过 Carrierwave 传递到 fog 中。发送到 S3 时,我经常收到 Connection reset by peer (Errno::ECONNRESET) 错误,因此可能需要重试部分上传。

关于ruby-on-rails - 如何将大于 5GB 的文件上传到 Amazon S3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11781775/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com