Tipps zur Leistungsbewertung
Wenn Sie den Status von Microsoft SQL Server Notification Services auswerten möchten, überwachen Sie den Weg von Ereignissen und Benachrichtigungen durch das System. Durch Überwachen des Systems möchten Sie Folgendes sicherstellen:
- Ereignisse treffen ein und werden von den Ereignisanbietern erfasst. Zu den Überwachungstools, die Sie verwenden können, gehören die folgenden:
- Windows-Ereignisanzeige
- Leistungsindikatoren in den folgenden Leistungsobjekten: NS$instance_name: Event Providers-Objekt und NS$instance_name: Events-Objekt
- Gespeicherte Prozeduren NSEventBatchList (Transact-SQL), NSSnapshotEvents (Transact-SQL) und NSSnapshotProviders (Transact-SQL)
- Der Generator verarbeitet die Ereignisbatches und generiert Benachrichtigungen rechtzeitig und lässt keine Quanten aus. Zu den Überwachungstools, die Sie verwenden können, gehören die folgenden:
- Ereignisanzeige
- Leistungsindikatoren in den folgenden Leistungsobjekten: NS$instance_name: Events-Objekt und NS$instance_name: Generator-Objekt
- Gespeicherte Prozeduren NSNotificationBatchList (Transact-SQL), NSSnapshotApplications (Transact-SQL) und NSQuantumsSkipped (Transact-SQL)
- Benachrichtigungen werden in den Benachrichtigungstabellen aufgesammelt; der Verteiler formatiert Benachrichtigungen und übermittelt sie an die Übermittlungskanäle. Zu den Überwachungstools, die Sie verwenden können, gehören die folgenden:
- Ereignisanzeige
- Leistungsindikatoren im NS$instance_name: Notifications-Objekt
- Gespeicherte Prozeduren NSNotificationBatchList (Transact-SQL) und NSSnapshotDeliveryChannels (Transact-SQL)
- Das externe Übermittlungssystem akzeptiert und übermittelt die formatierten Benachrichtigungen. Zu den Überwachungstools, die Sie verwenden können, gehören die folgenden:
- Ereignisanzeige
- Leistungsindikatoren im NS$instance_name: Notifications-Objekt
- Gespeicherte Prozedur NSDiagnosticFailedNotifications (Transact-SQL)
- Der Vacuumer-Prozess findet nach dem in der Anwendungsdefinitionsdatei (ADF, Application Definition File) angegebenen Zeitplan statt. Zu den Überwachungstools, die Sie verwenden können, gehören die folgenden:
- Ereignisanzeige
- Leistungsindikatoren im NS$instance_name: Vacuumer-Objekt
- Gespeicherte Prozedur NSSnapshotApplications (Transact-SQL)
- Die CPU und die Datenträger sind innerhalb ihrer Kapazitätsgrenzen fehlerfrei funktionsfähig. Weitere Informationen finden Sie unter Überwachen der CPU-Nutzung und Überwachen der Datenträgernutzung.
- Datenbank- und Protokolldateien werden nicht zu stark gefüllt, und sie werden weder zu häufig automatisch vergrößert noch reicht der Speicherplatz nicht aus. Weitere Informationen finden Sie unter SQL Server, Datenbanken-Objekt.
Wenn die Anwendung nicht wie erwartet funktionsfähig ist, finden Sie weitere Informationen unter Problembehandlung bei Notification Services.
Überwachen von Produktionsanwendungen
In Notification Services-Anwendungen gibt es üblicherweise Perioden starker Auslastung und ruhigere Perioden, da die Abonnenten meist zu ähnlichen Zeiten Informationen erhalten möchten und umfangreiche Ereignisbatches häufig täglich zur gleichen Zeit eintreffen. Daher ist es sehr wichtig, die Anwendungen in Perioden der Spitzenauslastung zu überwachen, Basislinien für die Leistung zu definieren und dann die Leistung über einen längeren Zeitraum mit den Basislinien zu vergleichen.
Bei Anwendungen in der Produktion sollten Sie immer die entscheidenden Leistungsindikatoren überwachen und Warnungen festlegen, durch die die Operatoren bei schlechter Leistung benachrichtigt werden. Warnungen können mithilfe von Leistungsdatenprotokollen und Warnungen, einem Feature des Microsoft Windows-Leistungstools, festgelegt werden.
Reagieren auf Leistungsprobleme
Bei auftretenden Leistungsproblemen sollten Sie alle verfügbaren Tools verwenden, um die Ursache zu bestimmen. Die folgenden Maßnahmen können bei Leistungsproblemen hilfreich sein:
- Konfigurieren Sie Indizes für Regeln (Ereignisverlaufsregeln, Abonnementereignisregeln und geplante Abonnementregeln), um die Anwendung zu optimieren.
- Führen Sie in Zeiten maximaler Arbeitsauslastung keine Ad-hoc-Abfragen für die Instanz- und Anwendungsdatenbanken aus, da dadurch möglicherweise vorübergehende Sperren für von Notification Services benötigte Ressourcen erstellt werden.
- Stellen Sie sicher, dass die CPU-Ressourcen für die üblicherweise CPU-intensive Verteilung geeignet sind.
- Stellen Sie sicher, dass der Server über die erforderliche Bandbreite zu den Servern oder Diensten verfügt, die Benachrichtigungen übermitteln.
- Stellen Sie sicher, dass die Anwendungen bezüglich der Leistung optimiert sind. Zum Optimieren einer Anwendung müssen Sie möglicherweise mehrere Elemente in der Anwendungsdefinitionsdatei anpassen, besonders Elemente im ApplicationExecutionSettings-Element.
- Platzieren Sie Datenbankdateien, Protokolldateien und die tempdb-Datenbank auf drei separaten physikalischen Datenträgern. Die Leistung beim Generieren von Benachrichtigungen im Datenbanksystem ist häufig durch Datenträgerressourcen beschränkt.
Bei allen Leistungsproblemen ist es wichtig, das Problem durch Betrachten der Leistungsindikatoren, Verwenden von Berichten und Untersuchen des Anwendungsprotokolls auf auftretende Fehler zu isolieren.
Siehe auch
Konzepte
Auswählen von Überwachungstools
Notification Services-Leistungsobjekte
Verwenden von Leistungsprotokollen und Warnungen
Verwenden von Berichten zur Leistungsanalyse
Angeben von Einstellungen für die Anwendungsausführung
Andere Ressourcen
Fehler und Ereignisse in Notification Services