8

mongodb と scala を使用して Web アプリケーションを開発しています。ユーザーがアップロードした画像を保存したい。2 つのオプションがあります

  1. GridFS を使用して画像を mongodb データベースに直接保存します。

  2. サーバー上のフォルダーに画像を保存します。その画像のパスのみをデータベースに保存します。

イメージのダウンロードに必要な時間を短縮するには、どのアプローチが最適ですか?

4

2 に答える 2

7

通常、いくつかの理由から、静的イメージをアプリケーション サーバーから分離する必要があります。

  • ライブアプリケーションサーバーで画像を提供する帯域幅/メモリ/CPU時間を使用したくない: アプリ用に保存したい
  • Amazon S3、大規模なファイルサーバー クラスター、および/またはキャッシング CDN などを使用して、イメージ サービスのスケールアップを容易にします。
  • 一般的なデータベースは、画像を保存するために十分に最適化されていません

上記のすべてを考慮して、画像を別々に保ち、画像のパス (またはルックアップ ID) のみをデータベースに保存することをお勧めします。

于 2013-05-28T06:25:43.033 に答える
2

2番目のオプションを選択してください

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

この目的のために、 gem を使用できますmongoid-paperclip

これは素晴らしい宝石であり、実装が簡単です。

于 2013-05-28T06:55:22.933 に答える