【问题标题】:which is best approach to store images?存储图像的最佳方法是什么?
【发布时间】:2013-05-23 00:20:43
【问题描述】:

我们正在使用 mongodb 和 scala 开发 Web 应用程序。我们要存储用户上传的图像。我们有两个选择

  1. 使用 GridFS 将图像直接存储在 mongodb 数据库中。

  2. 将图像存储在服务器上的文件夹中。并且仅将该图像的路径存储在数据库中。

哪种方法可以减少下载图像所需的时间?

【问题讨论】:

标签: mongodb


【解决方案1】:

通常,出于以下几个原因,您希望将静态图像与应用服务器分开:

  • 您不想在实时应用服务器上使用带宽/内存/CPU 时间来提供图像服务:您希望将其保存到您的应用中
  • 使用 Amazon S3、大型文件服务器集群和/或缓存 CDN 等工具可以更轻松地扩展图像服务
  • 典型的数据库在存储图像方面没有得到很好的优化

鉴于以上所有情况,我建议将图像分开,并且仅将图像的路径(或查找 ID)存储在数据库中。

【讨论】:

  • 嗯,您根本没有将 MongoDB 的考虑纳入上下文,您只需使用几乎默认的答案,就像在 MySQL 中使用 blob 一样。
【解决方案2】:

选择第二个选项

2.Storing Images in folder on server.And store only path of that image in database.

为此,您可以使用 gem mongoid-paperclip

这是一个很棒的 gem 并且易于实现。

【讨论】:

    猜你喜欢
    • 2020-11-23
    • 2013-02-04
    • 2019-02-13
    • 1970-01-01
    • 2019-06-26
    • 1970-01-01
    • 2012-11-17
    • 2011-02-27
    • 1970-01-01
    相关资源
    最近更新 更多