これは私の最初の質問です。十分に説明されているので、答えが見つかることを願っています。
私は、Oracle9i サーバーにすべてのデータがある配送会社の Web サイト プロジェクトで働いています。Web ユーザーのほとんどは、パッケージがいつ届くかを知りたいだけですが、その情報を 1 日に数回照会してシステムを更新するロボットもいると思います。これらのロボットを停止するコードに取り組んでいます (たとえば、15 分で 3 回目のクエリの後にキャプチャを要求するなど)。
さて、私の問題は、12.00-14.00 のピーク時にデータベースの応答が非常に遅くなることです。これは、Web アプリケーションから解析したデータの一部です。このレベルの Web サービスのログはありませんが、そこには多くのクエリもありました。
データソースからの接続を要求したときのタイムスタンプ、Integer.toHexString(connection.hashCode())、データソースの名前、接続を閉じたときのタイムスタンプ、および両方のタイムスタンプの差が表示されます。ほとんどの場合、クエリは 1 秒以内に終了しますが、昨日はこの奇妙な遅延が 2 分以上ありました。
データベースで許可されている接続の最大数があるので、その制限を超えると、データベースはクエリをキューに入れ、再試行しますか?
前もって感謝します。