执行存储过程后,Web应用程序变慢

时间:2017-11-17 13:44:39

标签: sql sql-server stored-procedures

我有一个Web应用程序,我通过执行存储过程来显示报告。执行花费的时间太长但是在显示报告后表示完成存储过程的执行后,app变得非常慢。即使我导航到其他页面也需要很长时间。

执行存储过程后是否有可能,后面仍然会发生一些事情。仍然存储过程正在运行或表被锁定或类似的东西。如何找出原因。

我的服务器是SQL server 2008R2。

1 个答案:

答案 0 :(得分: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并检查webservices状态

   sc query <servicename>