SQL Server存储过程长期间歇运行

时间:2019-06-20 00:48:17

标签: sql-server tsql

我有5个由api调用的存储过程,这些存储过程通常在100毫秒内运行,但是间歇地,所有存储过程在生产中突然耗时超过10秒。我们在上线之前做了压力测试,在压力测试期间一切都很好。

对于每个存储过程,我都使用SYSDATETIME()捕获开始时间,并在存储过程末尾将表记录到表中,同时还包含结束时间。因此,我在生产上运行了探查器,并注意到了奇怪的事情。

例如,今天,事件探查器RPC:completed事件的开始时间为09:18:04.680,正如我的存储过程执行日志表所说的那样,执行始于09:19:54.288。因此,探查器执行开始与我的存储过程内部开始时间之间存在110秒的不匹配。因此,所有存储过程在2-3分钟的窗口内都会发生这种情况,并且一切都会自行清除。

我跑了perfmon,对我来说没有什么异常。 SQL Server具有高容量,该应用程序当前仅运行少量用户,因此流量不高。

我也有Redgate SQL Monitor,它没有显示任何异常的等待时间。

我什至不知道在哪里寻找。我不确定其参数嗅探,因为受影响的存储过程之一不接受任何参数。 2-3分钟后,所有存储过程均按预期运行。

0 个答案:

没有答案