2017-01-11 8 views
1

私は画像のフィードを使用してウェブサイトを作成しています(pinterestに似ています)。私はそれらの画像を人気度の高い順に並べ替えるようにしたい(それぞれの画像が好きなものはない)。私たちは、MongoDBは、 ドキュメントを使用しているランキングに基づいて画像ギャラリーを表示

これを実装する方法について混乱してイム..

は、次のフィールドに人気の値である 1 _id 2. user_idを 3. image_idは 4.スコアを(持っています、ビュー(ビューなし)+ 10倍(いいえのノー) ランク

スコアを計算するために毎日スクリプトを実行することを考えています。 そして、ループスクリプトを実行してランクを割り当てます(最高得点の画像は1ランク、2ランクのランク2ランクの画像など)。

次に、フィードはランクの昇順で画像を取得します。 このようなドキュメントを何百万ものスクリプトで実行するには、時間がかかります。 これを行うにはより良い方法がありますか?

答えて

0

あなたのニーズに応じてさまざまなアプローチを試して、実装して最適なものを見つけることができます。

    あなたのアイデア
  1. :更新ページデシベル
  2. でフィールドを計算する(夜間)バックグラウンドジョブ:選択した画像、順序同類によっては、すべてのイメージ図で
  3. DESC 10件の+景色を*など、更新画像ランク
関連する問題