ColdFusion アプリのヒット カウンターを作成したいと考えています。ページ ヒットごとにデータベース ヒット テーブルを更新したくありません。理想的には、ヒットをアプリ スコープに集約するか、キャッシュをある種の構造体に集約し、それらを断続的に保存したいと考えています。
私はこれまでのところアイデアを持っています:.
アイデア1
- pageId と pageHits のキーと値のペアを格納するアプリまたはキャッシュの構造体を作成します。
- 各ページ ヒットで、pageId/IP アドレス Cookie の存在を確認します。
- を。存在する場合は、何もしません。
- b. そうでない場合は、それを設定し、アプリまたはキャッシュのヒット構造体を更新します。
問題:構造体データをデータベースに断続的に/一定時間経過後に取得する方法がわかりません。イベント予定?
アイデア2
クッキーはありません。pageId/IP アドレスを独自のキャッシュ/アプリ構造体に保存します。
問題情報を格納するためにデータ構造体/配列を構造化する方法がわかりません。配列ループと構造体の検索が複雑に見えます。そして、私はまだアイデア1と同じ問題を抱えています。
アドバイス、アイデア、批判はありますか?特に、アイデア 2 のデータ構造を理解する助けが必要です。データの整合性よりもパフォーマンスに関心があり、CF9 のみのソリューションに満足しています。すべてのページIDのページヒット列にデータを非正規化しようとしていることを追加する必要があります。正規化されたデータ テーブルは必要ありません。