我们在 Heroku 上有一个 RoR 3.2 站点,使用他们的生产层 PostgreSQL 数据库。
我们的网站用户偶尔会上传 0.5 - 2MB 大小的图片。出于不同的原因,我们希望将这些图像存储在数据库中,而不是作为 S3 或类似文件中的文件。
如果我们的网站是图像重的,即 Facebook 的克隆,那么将图像存储在数据库中肯定不是一件好事。
无论如何,它不是,所以这里有一些想要在数据库中存储用户图像的原因:
- 控制一切:S3 停机时间和第三方 gem 不能中断图像处理/对图像的访问。
- 轻松删除:如果用户取消了他的帐户,我们可以通过我们的 rails 模型(关系依赖项)轻松删除与该帐户相关的所有图像。
- 更轻松的用户数据导出:当用户想要离开我们的站点并随身携带他的数据时,我们可以更轻松地导出他的图像,而不必从 S3 导出
- 成本:不是一个重要的论点,但由于我们已经为数据库付费,所以它比使用 S3 更便宜,后者需要花费(少量)金钱。
- 备份:不是一个重要的论点,但我们的数据库的备份将包括与我们网站相关的所有内容(当然,除了 RoR 代码)。
在 Heroku PostgreSQL 数据库中存储图像的最简单方法是什么?示例代码或演练链接将是最受欢迎的。
谢谢 :)