2011-07-30 23 views
0

私はいくつかの記事が表示されているウィジェットを持っています。各記事には約2つの選択と1つの挿入/更新があります。遅延したmysqlクエリを実行した後、一括実行

最悪の場合のシナリオには、300件の記事を表示するウィジェットが含まれています。これには、900個のクエリとウィジェットの他のセットアップクエリが含まれています。今度は、ウィジェットが5人のユーザによって同時に読み込まれることを時々想像してください。

各ウィジェットのすべてのクエリを収集してファイルに書き込む必要があると思っていました。後でこれらのクエリが30秒ごとに実行されるcronジョブが定期的に実行されます。

パフォーマンスにどの程度の違いがありますか。また、他の誰かがより良いシステムやアイデアを持っていますか?

youtubeなどのウェブサイトは、YouTube動画の表示をキャッシュするために何を使用しますか?

私はもうウィジェットを最適化できません。私は遅延ページカウンタの解決策がほしいと思う/

+0

あなたのクエリを最適化する必要があるように聞こえます(いくつかのコードのように)。 –

答えて

0

このような重い作業を行うためにcronジョブを使用することは悪い考えではありません:あなたのcronjobにHTML出力を生成させて、 、ページを表示するとき。

この方法:

  • ページが表示への高速になります。一つだけの静的なHTMLデータ/ファイル読み込み/インクルードする
  • 以上1人のユーザー(cronジョブ)すべてやっ存在になることはありません重い質問。


しかし、真剣に、900のウィジェットのクエリですか? 1つの記事に対して3つのクエリがありますか?
ここには改善が必要なものがあります。

+0

私はできません。記事のデータを取得する選択クエリは1つだけです。 – Vish

+0

残りは分析目的です。 – Vish

+0

しかし、私は選択のためにキャッシングを使用するので、毎秒300の選択クエリが15秒に1回のようです。しかし、インサートはウィジェットのロードごとに600です。 – Vish

関連する問題