当前位置: 首页 > 知识库问答 >
问题:

如何使用 Rails 和活动存储实施 AWS S3 分段上传?

艾正浩
2023-03-14

我正在使用香草Rails活动存储文件上传与多个:真实选项。这些文件存储在S3上。设置运行良好。然而,我认为对于非常大的文件,实现多部分上传将是有益的,以获得最佳速度和可靠性。

我在这里找到了AWS S3分段上传的描述:https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html

我还发现了一个特定于Ruby的页面:https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu-ruby-sdk.html

然而,我找不到任何关于如何用Rails和活动存储实现这个特性的参考资料。

如果可能的话,我希望收到一些关于如何最好地实现分段上传而不撕裂活动存储的指导。

共有1个答案

祁彬
2023-03-14

以防有人在寻找这个问题的答案。从Rails 6.1开始,活动存储将支持多部分上传。对于大文件,主动存储直接上载会自动切换到多部分。不需要更改设置。

您可以自定义被视为大文件的阈值。默认值为100MB,您可以通过将其添加到Amazon设置下的storage.yml来更改默认值:上传:multipart_threshold:

参考编号: https://github.com/rails/rails/blob/master/activestorage/CHANGELOG.md

 类似资料:
  • 早些时候,我的文件上载到存储文件夹中。但是现在我想在s3存储桶上上传图像。如何迁移s3存储桶上现有的本地数据? 我在这里找到了脚本https://www.stefanwienert.de/blog/2018/11/05/active-storage-migrate-between-providers-from-local-to-amazon/但是得到了一个错误 为活动存储调用私有方法打开 那么,我

  • 我让activestorage在LocalHost上使用我的Rails5.2应用程序。 null 服务器设置如下: Nginx在计算机调用上反转代理 运行的另一台计算机上的Apache 乘客 我可以在rails编写的日志文件中看到,第二个请求的响应实际上相当快:

  • 我们希望用户注册他们从事某项工作的时间。例如,假设我为一个项目工作了两个半小时,然后我想用(两小时三十分钟)填写表单输入,并将其存储在数据库中。同样的时间是1:45——一小时四十五分钟——来接另一个案子。然后,我们将使用该信息计算应分配给该活动的金额。 例如,如果一小时是10美元,那么: < li>15分钟- 我们是否应该将<code>2:30 谢谢!

  • 根据文件 使用范围存储,除非应用需要访问存储在应用特定目录之外和MediaStore API可以访问的目录之外的文件。如果将应用特定文件存储在外部存储上,可以将这些文件放置在外部存储上的应用特定目录中,从而更容易采用范围存储。这样,当启用作用域存储时,应用将保持对这些文件的访问。 在我的情况下,我创建一个文本文件使用以下: 上面是在下面的位置创建文件(但没有可用的SD卡): 我正在对它进行写操作。

  • 我想使用下面另一个活动简单代码示例中的活动上下文,有什么想法吗? 谢谢

  • 我知道mongo不是用来格式化的,但是我如何创建一个博客文章并以段落形式显示它,而不是一个文本块? 例如,如果我有一个管理部分,我可以在其中创建博客文章,我将其输入textarea部分。。。 作为一名杰出的献身者,我们需要暂时的劳动和财富。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。 作为一名杰出的献身者,我们需要暂时的劳动和财富。但是,在最低限度