0

タイトルがおかしいのでごめんなさい。

クエリがdbにロードされ、いくつかの行が選択されるコードを作成しました。次に、ループを作成して配列に配置します。

SELECT----      
for($i=0;$i<$count;$i++){
            $info[] = mysql_fetch_assoc($result);

したがって、このクエリは本当に簡単で高速です。

現在、これらのクエリは、訪問者がWebの特定のサイトにアクセスしたときに実行されています。それはすべてうまくいきますが、私は訪問者を決して信用したくありません。彼らがページを数回(複数のブラウザ、ボットなどで)更新した場合はどうなりますか?そうすると、1秒あたりのクエリが非常に増加します。これはクラッシュにつながる可能性があります!それともできますか?

だから私が疑問に思うのは、どうすればコンテンツを取得できますが、それでもユーザーが1秒間に何回もページを更新できないようにすることです。クッキーは最後のdb接続をチェックしますか?私のために何かアイデアがありますか?何かアドバイスはありますか?

4

1 に答える 1

1

通常、次のように機能します。

  define('THIRTY_SECONDS', 30);

  if (current_request_cache_time_in_seconds() < THIRTY_SECONDS) {
      get_request_response_from_cache();
  } else {
      get_request_response_from_php_code();
      save_request_response_to_cache();
  }

ご覧のとおり、これは高レベルの関数であり、実行されている実際のコードが制御されていることを意味します。この例では、特定のページのコードは30秒に1回だけ実行されます(競合状態が表示されない限り)。

于 2013-03-08T08:23:19.357 に答える