2011-09-11 11 views
0

私はトラフィックが高い で、ページが を接続するためのPHPファイルを使用してMySQLに 訪問者のブラウザの詳細を格納jsのコードを持っていたときに約1000ページを取得するサイトは分を見て持っていますデータベースに。 たとえば、browser.jsはstorebrowserdata.phpを呼び出します。 を使わずにphpファイルとjsファイルをキャッシュする方法はありますか?dbに保存されている統計データに影響しますか? トラフィックが日中に高くなるとサイトが減速し、CPU の使用率も上がります。キャッシュPHPとJavaScriptファイル

+0

あなたはget_browser機能を使用しない理由? – undone

+0

すべての訪問者に定義して実行する必要があるものを、どのようにキャッシュしたいですか? ... @Deathが述べているように、サーバー側にブラウザ情報を保存するほうがはるかに好ましいでしょう(サーバー側の言語を使って検出できない画面サイズのようなものではなく、保存しているブラウザ情報の場合) –

+0

ブラウザのサイズと私はGoogle Analyticsを使用することはできませんので、私の独自のクエリを取得したデータを実行します。また、私は複数のサイトでjsを使用する – peter

答えて

0

jsファイルとphp1をキャッシュすることができます。
しかし、それはあなたのために何も役に立たないでしょう。

サイトのパフォーマンスが低下する可能性のあるデータベースの更新です。

どのような操作でほとんどのCPUを消費しますか?あなたのアプリケーションをプロファイルしましたか?それはあなたのサイトでPHP mysqlを使用している唯一のページですか?

1

PHPが解釈されます。各ページの負荷で各訪問者のブラウザ/ユーザーエージェントの情報を取得したい場合は、そのたびにそのスクリプトを実行する必要があります。それをキャッシュすることはできません。

この機能がサイトのパフォーマンスを低下させている場合は、Googleアナリティクスのような代替ソリューションを使用するか、原子的なアップデートを提供するMongo DBのようなNoSQLソリューションを調査するか、一般的にMySQLより高速です。

0

実行されるプロセスのフローを制御する必要がある場合は、キューを使用して実行速度を制御できます。このシステムについて

、これは偉大なオープンソースプロジェクトです:http://www.rabbitmq.com/

関連する問題