私のWebアプリケーションでは、「レスポンステスト」プロセスを作りたいと思います。このプロセスは、Webページから起動して、データベースサーバに到達可能かどうか、結果を得るためのおおよその時間を確認することができます。私は、ストアドプロシージャの実行の正確な時間を必要としない"レスポンステスト"ストアドプロシージャを作成するにはどうすればよいですか?
、私はデータベースの「反応性」のアイデアを持っているしたいと思います..
だから私はこのような方法で行います
を var start = DateTime.Now;
var test = new ObjectManager().ListObjects(SomeParameters);
var stop = DateTime.Now;
TimeSpan diff = stop - start;
label.Text = diff.TotalSeconds.ToString();
実際、ObjectManager.listObject()はストアドプロシージャを介してデータベースからデータを取得するメソッドです。 したがって、すべてのプロセスの時間が計算されます。 データベースに接続し、ストアドプロシージャを起動し、データをキャストして取得します。 ストアドプロシージャだけでなく、これは問題ではありません。
これは問題なく動作しますが、2つの問題があります。
私は 件のデータの量からストアドプロシージャ「独立」を作成する必要があります。
最初の実行時に返される時間が の場合は1,62123秒です。そして私がページをリフレッシュすると、時間は 0,89897秒になります。半分の時間!各リフレッシュは約0.8 秒であることを後に...
それはそれは、SQLキャッシュによって引き起こされているようです。..
だから、私は中のデータのの量から「独立した」ストアドプロシージャを必要としますデータベースとは、SQLキャッシュを使用しない..それを行うための任意のアイデア?