2016-08-22 6 views
0

私は、別のユーザーによるプロファイルビューの数を格納するためにredisを使用します。すべてのページビューでテーブルを更新するのではなく(カウントを1つ増やす)、リスト内のそのプロファイルまたはredisの何かにそのビューの数を保存して増やすことを考えています。定期的に、テーブルを一覧表示して更新します。したがって、DBへのクエリの数を減らすことができます。 リストは、他のデータ構造を使用する方が良いでしょうか。これを行うための他の方法がありますか?redisを使用してページビュー数のキューを維持し、すべてのページビューで更新するのではなくDBを集合値で更新します。

答えて

0

リストが不変で、カウントを更新しようとしている場合にのみ、リストはあまり適切ではありません。

代わりに、各フィールドがプロファイルを表し、値がそのページのカウンタであるハッシュを使用することを検討してください。

各ページビューは、該当フィールドの値にHINCRBYをトリガーします。そのハッシュの内容を定期的に読み取って削除し、データベースにデルタを追加することができます。

関連する問題