2017-11-17 1 views
-1

ストアドプロシージャを実行してレポートを表示しているWebアプリケーションがあります。実行には時間がかかりすぎますが、ストアドプロシージャの実行が終了した後、アプリが非常に遅くなるというレポートを表示した後です。ちょうど私が他のページに移動してもかなり長い時間がかかります。ストアドプロシージャの実行後にWebアプリケーションが遅くなる

ストアドプロシージャを実行した後に何かが起こっている可能性はありますか?まだストアドプロシージャが実行されているか、テーブルがロックされているか、このようなものです。理由を調べる方法。

私のサーバーはSQL Server 2008R2です。

+0

ストアドプロシージャはどのように見えますか? – LONG

+0

デバッガでステップ実行しているときに発生しますか? –

+0

dbにsp_whoを実行して、ブロッキングクエリがあるかどうかを調べることができますが、他には何もすることはできません(実行計画が不適切にキャッシュされているなどの理由で)。 –

答えて

0

あなたは私ではなく、段階的なアプローチ

1に従うだろう、いくつかの診断を実行する必要がある場合があります)すべてのブロックを確認するには、どの遅い走行に確認してください)

SELECT * FROM dbo.sysprocesses WHERE blocked <> 0; 
SELECT * FROM dbo.sysprocesses WHERE spid IN (SELECT blocked FROM dbo.sysprocesses where blocked <> 0) 

2を処理

SELECT r.session_id 
    ,s.TEXT 
    ,r.[status] 
    ,r.blocking_session_id 
    ,r.cpu_time 
    ,r.total_elapsed_time 
FROM sys.dm_exec_requests r 
CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s 
を問い合わせます

3)Windowsでcmdを実行し、Webサービスの状態を確認してください。

sc query <servicename> 
関連する問題