Советы по оценке производительности
Состояние служб Microsoft SQL Server Notification Services оценивается путем мониторинга потока событий и уведомлений всей системы. При мониторинге системы необходимо убедиться в следующем:
- События поступают и собираются поставщиками событий. Возможные средства мониторинга включают следующее:
- Средство просмотра событий Windows
- Счетчики производительности в следующих объектах производительности: Объект NS$имя_экземпляра: Event Providers, объект и Объект NS$имя_экземпляра: Events, объект
- Хранимые процедуры NSEventBatchList (Transact-SQL), NSSnapshotEvents (Transact-SQL) и NSSnapshotProviders (Transact-SQL)
- Генератор своевременно обрабатывает пакеты событий и создает уведомления, не пропуская такты. Возможные средства мониторинга включают следующее:
- Средство просмотра событий
- Счетчики производительности в следующих объектах производительности: Объект NS$имя_экземпляра: Events, объект и Объект NS$имя_экземпляра: Generator
- Хранимые процедуры NSNotificationBatchList (Transact-SQL), NSSnapshotApplications (Transact-SQL) и NSQuantumsSkipped (Transact-SQL)
- Уведомления собираются в таблицах уведомлений, а распространитель форматирует уведомления и доставляет их в каналы доставки. Возможные средства мониторинга включают следующее:
- Средство просмотра событий
- Счетчики производительности в Объект NS$имя_экземпляра: Notifications, объект
- Хранимые процедуры NSNotificationBatchList (Transact-SQL) и NSSnapshotDeliveryChannels (Transact-SQL)
- Внешняя система доставки принимает и доставляет отформатированные уведомления. Возможные средства мониторинга включают следующее:
- Средство просмотра событий
- Счетчики производительности в Объект NS$имя_экземпляра: Notifications, объект
- Хранимая процедура NSDiagnosticFailedNotifications (Transact-SQL)
- Процесс очистки выполняется по расписанию, заданному в файле определения приложения (ADF). Возможные средства мониторинга включают следующее:
- Средство просмотра событий
- Счетчики производительности в Объект NS$имя_экземпляра: Vacuumer, объект
- Хранимая процедура NSSnapshotApplications (Transact-SQL)
- ЦП и диски функционируют в пределах своих возможностей. Дополнительные сведения см. в разделе Контроль использования ЦП и Контроль использования диска.
- Файлы баз данных и журналов не заполняются до предела, не расширяются автоматически слишком часто и в них не кончается свободное место. Дополнительные сведения см. в разделе SQL Server, объект Databases.
Если приложение не работает надлежащим образом, см. раздел Устранение неполадок служб Notification Services.
Мониторинг производственных приложений
Приложения служб Notification Services обычно имеют периоды пиков и покоя, поскольку подписчики обычно одновременно запрашивают доставку данных и поскольку большие пакеты событий часто прибывают в одно и то же время суток. По этой причине очень важно осуществлять мониторинг приложений во время пиковых периодов, разрабатывать планы развития производительности, а затем сравнивать производительность с течением времени.
Для производственных приложений следует постоянно осуществлять мониторинг счетчиков производительности и устанавливать предупреждения для уведомления операторов о снижении производительности. Можно установить предупреждения с помощью функции «Предупреждения и журналы производительности» средства «Производительность» панели управления Microsoft Windows.
Устранение проблем с производительностью
При возникновении проблем с производительностью необходимо использовать все доступные средства для определения их причин. Возможные способы устранения проблем с производительностью:
- Настройте индексы для правил (правил хроники событий, правил событий подписок и правил плановых подписок) для настройки приложения.
- Не запускайте специализированные запросы в базах данных экземпляров и приложений во время пиковых периодов обработки, поскольку они могут вызывать временные блокировки ресурсов, необходимых службам Notification Services.
- Убедитесь, что ресурсы ЦП соответствуют распространению, которое обычно ограничивается именно ресурсами ЦП.
- Убедитесь, что сервер обладает достаточной полосой пропускания в направлении серверов или служб, доставляющих уведомления.
- Убедитесь, что приложения настроены на обеспечение наивысшей производительности. Чтобы настроить приложение, может потребоваться настройка нескольких элементов в файле определения приложения, особенно составляющих элемента ApplicationExecutionSettings.
- Размещайте файлы баз данных, файлы журналов и базу данных tempdb на разных физических дисках. Производительность создания уведомлений в системе базы данных часто ограничивается дисковыми ресурсами.
В случае возникновения проблем с производительностью важно изолировать проблему, проанализировав счетчики производительности, используя отчеты и просматривая журнал приложений для определения того, какие возникают ошибки.
См. также
Основные понятия
Выбор средств мониторинга
Объекты производительности служб Notification Services
Использование журналов и предупреждений производительности
Использование отчетов для анализа производительности
Указание настроек выполнения приложения
Другие ресурсы
События и ошибки служб Notification Services