0

AppEngineでソーシャルネットワークアプリケーションをプログラムしました。これから追加する機能は、過去1か月間にどのユーザーがあなたのプロフィールを閲覧したかを確認する機能です(LinkedInでできるように)。

これが私がコードを実装することを考えている方法です:

  • 新しいエンティティタイプ(ViewerTrackerと呼びます)を使用して、プロファイルが表示されたときに追跡します。これには、1)表示されているプロファイルのID、2)表示されているプロファイルのIDの3つの主要な値が含まれます。 、および3)視聴の日時。
  • 誰かがプロファイルを表示するたびに、Viewertrackerをチェックして、その人が以前にプロファイルを表示したことがあるかどうかを確認します。表示した場合は、ViewerTrackerオブジェクトの日時を更新します。プロファイルが以前に表示されていない場合は、イベントを記録するための新しいViewerTrackerエンティティを作成します。
  • また、過去30日間に、個別のエンティティタイプ(ViewerCountと呼びます)で各プロファイルを表示したユニークなユーザーの数を追跡します。30日より古いViewerTrackerオブジェクトを毎日クリアし、ViewerCountオブジェクトから削除された古いViewerTracker要素の数を差し引く必要があるcronジョブを作成します。

ただし、(日時値のクエリに基づいて)古いViewerTrackerエンティティを削除する場合、ViewerCountオブジェクトから数を差し引くことができるように、削除したエンティティの数を正確に知る必要があります。削除操作によって削除されたエンティティの数を正確に知る方法はありますか?この問題への私のアプローチは大丈夫ですか、それともそれを行うためのより良い方法がありますか?

4

0 に答える 0