2011-12-08 3 views
1

私はJWplayerを自分のウェブサイトにインストールしており、自分のビデオが取得するビューの数を記録して保存したいと考えています。ウェブサイト上のビューを効率的に記録する

誰かがヒットした後、データをデータベースに保存するために必要なすべてのjavascriptとajaxコードが既にあります。しかし、誰かがビデオを再生するたびにデータベース内の数字を増やすと効率が悪いと感じています。

この問題を解決する最も効率的な方法は何でしょうか?

ありがとうございました。

+0

あなたは、サーバーのログファイルへのアクセス権を持っていますか?もしそうなら、それが答えです。 –

+0

なぜあなたはそれが非効率的だと感じますか? – webbiedave

+0

@webbiedave数分または数時間に一度にすべてのデータを一度にダンプするだけで、大量のデータベース接続を構築することはリソースの無駄になると私は考えていました。 – Dan

答えて

0

私は数か月前に同様の質問をしましたが、広告に関連していました。クライアントに正確に請求できるように、広告レンダラーをトラッキングする最適な方法を知りたかったのです。私が得た応答は、アクセスログを使用することでした。そこで、パーサーを作成して、サーバーログからすべての広告を外挿し、レポートを表示するための表にインポートしました。

アクセスログをこのタイプの情報を追跡するためのソースとして使用するかどうかを検討する必要があります。 Logrotateは、logrotateがログファイルを上書きする前にデータを引き出していることを確認してください。私は本当にシステムの男ではないが、ログログを設定して、毎日午前0時のログファイルを新しい場所に移動させるようにしている。

アクセスログのもう1つの利点は、クライアント(または誰でも)があなたの番号に疑問を抱く場合にソースログファイルを参照し、あなたの番号が膨らんでいないことを証明できることです。

- 編集 - アクセスログエントリの

例:

# If you can extrapolate videos from your path, then your parser has something to 
# hook into (videos in path), and your done 
127.0.0.1 - - [08/Dec/2011:22:47:25 +0000] "GET /path/to/your/videos/video1.wmv HTTP/1.0" 200 57530 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2" 

# Or, you could append a flag to the video url, and have your parser hook into the flag 
# for this example 'videoPlayed' 
127.0.0.1 - - [08/Dec/2011:22:47:25 +0000] "GET /path/to/your/videos/video1.wmv?videoPlayed=1 HTTP/1.0" 200 57530 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2" 
+0

@ダン:いくつかのサンプルのアクセスログエントリでポストを更新しました。ログファイルは自動的にhttpdによって書き込まれ、/ var/log/httpdディレクトリを調べます。 –

+0

私の場合、自分のログファイルを作成してそれに書き込む必要がありますか?私は使用すべき特定のタイプの書式がありますか? – Dan

+0

@ダン:いいえ、httpd(apache)があなたのためにログファイルを作成します。そのため、独自のソリューションを書くことと対比して使う方が良い理由です。ログファイルを好きなようにフォーマットすることもできます。基本的なGoogleの検索はまともな出発点を返しました。 http://www.cyberciti.biz/faq/apache-logs/。 –

関連する問題