首页 > 解决方案 > 将目录导出为 .zip 文件的最佳 AWS 存储选项?

问题描述

我对 AWS 产品、ruby on rails、Web 开发和任何类型的编码都是全新的。对于我在快速(且肮脏)的训练营之后的第一个项目,我正在尝试构建一个 ruby​​-on-rails 网站来存储图像并允许用户将它们作为 zip 文件下载。我在我的 EC2 开发环境中使用 RubyZip gem 来完成此任务,但我已经部署到具有 S3 文件存储的 Elastic Beanstalk,如果没有用于压缩的传统目录目标,RubyZip gem 似乎无法处理这种结构。

我的问题是在 EB 中实现此功能的最佳设置是什么?忽略 ruby​​ 约束,压缩 S3 目录似乎很 棘手。我应该迁移到 EFS 还是其他存储系统?我计划定期删除文件夹,并将它们限制在大约 100 张照片,因此长期和大容量存储不是问题。非常感谢!

编辑:我喜欢 Ruby(我唯一知道的语言),但不是 RubyZip、AWS 或其他任何东西,如果它们不是完成这项任务的最佳方法的话。

标签: ruby-on-railsamazon-s3amazon-ec2amazon-elastic-beanstalkamazon-efs

解决方案


就使用 S3 作为解决方案而言,我认为您走在正确的道路上。您面临的问题是,当您与 S3 交互时,它不像本地系统上的文件夹,而是您使用 S3 API 与文件交互。(上传、编辑、删除等)。这将是每个基于 AWS 的存储解决方案都会遇到的问题。

我认为,就您而言,解决方案是获取所有照片并将它们下载到本地系统上的临时文件夹中。然后,您可以在本地使用 Ruby 压缩它们。压缩后,将其上传回 S3。

编辑:本地是指运行 Ruby 应用程序的服务器(不是客户端)


推荐阅读