Поделиться через


Конфигурация сервера: порог заблокированного процесса

Область применения:SQL Server

blocked process threshold Используйте параметр, чтобы указать пороговое значение в секундах, при котором создаются заблокированные отчеты о процессах. Пороговое значение может быть задано в диапазоне от 5 до 86400. Монитор блокировки просыпается только каждые 5 секунд, чтобы обнаружить условия блокировки (он также ищет другие условия, такие как взаимоблокировки). Таким образом, если вы зададите blocked process threshold значение 1, процесс, блокирующий на протяжении 1 секунды, не будет обнаружен. Минимальная продолжительность блокировки процесса, которую можно будет обнаружить, составляет 5 секунд.

По умолчанию отчеты о блокированных процессах не создаются. Это событие не создается для системных задач или задач, ожидающих ресурсов, которые не создают обнаруживаемые взаимоблокировки.

При формировании данного события можно выдать предупреждение . Например, можно выдать администратору на пейджер сообщение о необходимости разобраться с блокировкой.

Мониторинг порога блокировки процесса использует фоновый поток отслеживания взаимоблокировок, который просматривает список задач, ожидающих выполнения в течение времени, превышающего указанное в настройках пороговое значение. Это событие формируется один раз в течение отчетного интервала для каждой из заблокированных задач.

Отчет о блокированном процессе выполняется по принципу оптимальных затрат. Нет никаких гарантий в режиме реального времени или даже близко к отчетам в режиме реального времени.

Новые настройки вступают в силу сразу же, без остановки или перезапуска сервера.

Примеры

В следующем примере параметр blocked process threshold устанавливается в значение 20 секунд, выдавая отчет о заблокированных процессах.

EXECUTE sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'blocked process threshold', 20;
GO

RECONFIGURE;
GO