Я рекомендую вам ввести sys.dm_os_latch_stats
и посмотреть, какие типы защелок имеют повышенные типы конкуренции и ожидания по сравнению с предыдущей базовой линией.
Если вы видите всплеск в защелках типа BUFFER, это означает, что он вызван обновлениями, конфликтующими для изменения той же страницы. Другие типы защелок также имеют краткое объяснение в MSDN и могут помочь вам найти причину проблемы. Для тех, кто помечен как «только для внутреннего использования», вам придется открыть службу поддержки с MS, поскольку подробное объяснение того, что они имеют в виду, находится на грани NDA.
Вам также следует заглянуть в sys.dm_os_wait_stats
. Если вы видите увеличение PAGELATCH_*
, то это та же проблема, что и у защелки типа BUFFER выше, конфликт при попытке изменить ту же страницу, иначе. как обновление горячей точки . Если вы видите увеличение PAGEIOLATCH_*
, то ваша проблема связана с подсистемой ввода-вывода, поэтому загрузка страниц в память занимает слишком много времени, когда они необходимы.