MySQLデータベースとPHP Data Objects(PDO)を接続し、広範なSQLクエリを実行しています。通常、約1500ミリ秒かかります。まだ最適化する必要があります。PHPスクリプトを短い間隔で2回実行すると、クエリにかかる時間は約90ミリ秒です。クエリはどちらの場合も同じです。同じクエリでスクリプトを実行すると、しばらくしてから再び1500ミリ秒かかります。
何故ですか?データベースは自動的にキャッシュされますか?データベースがキャッシュを保存してから自動的に削除する時間はありますか?
これは2つの異なるスレッドで発生するため、PHPで結果をキャッシュできないと思います。データベースが変更されたかどうかを知ることができないため、PHPが結果をキャッシュするとは思わないでしょう。
データベースに新しい行を挿入するスクリプトを毎分実行しています。これは、しばらくして再び1500ミリ秒かかる理由でもあります。関連するテーブルが同じではなくなったため、キャッシュは削除されていました。