Здравей,
Ако получите оплакване от забавяне от клиента, трябва да наблюдавате екземпляра на SQL Server и базата данни кой sql консумира много ресурси.
SQL Server DBA трябва да наблюдава базата данни всеки път и ако има много sqls, които изпълняват дълго време за изпълнение или консумират много ресурс на процесора, тогава това трябва да бъде докладвано на разработчика, а разработчикът и dba трябва да проучат тези sqls.
Можете да намерите TOP CPU заявки в базата данни на SQL Server със следната заявка.
SELECT TOP 50 ObjectName = OBJECT_SCHEMA_NAME(qt.objectid,dbid) + '.' + OBJECT_NAME(qt.objectid, qt.dbid) ,TextData = qt.text ,DiskReads = qs.total_physical_reads -- The worst reads, disk reads ,MemoryReads = qs.total_logical_reads --Logical Reads are memory reads ,Executions = qs.execution_count ,TotalCPUTime = qs.total_worker_time ,AverageCPUTime = qs.total_worker_time/qs.execution_count ,DiskWaitAndCPUTime = qs.total_elapsed_time ,MemoryWrites = qs.max_logical_writes ,DateCached = qs.creation_time ,DatabaseName = DB_Name(qt.dbid) ,LastExecutionTime = qs.last_execution_time FROM sys.dm_exec_query_stats AS qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt ORDER BY qs.total_worker_time DESC;