Zu Hauptinhalten wechseln
pdf?stylesheet=default
Blackboard Help

Benachrichtigungen – Leistung

Cache

Das Abrufen von Benachrichtigungen für die Anzeigemodule kann bei Systemen mit Hunderttausenden von Benachrichtigungen zu sämtlichen verfügbaren Kursen zu einer starken Belastung für das System, insbesondere auf Benachrichtigungsebene, werden. Um die Systemlast bei der Ausführung dieser Anfrage zu reduzieren, enthält das Benachrichtigungssystem einen Cache pro Benutzer pro Sitzung:

  • Im Cache werden die Ergebnisse einer Benachrichtigungsanfrage für einen bestimmten Benutzer, eine bestimmten Sitzung und einen bestimmten Kontext gespeichert. Das heißt, das System verwendet getrennte Caches: einen für jeden Benutzer der einzelnen Kurse, bei denen sich der Benutzer anmeldet, und einen auf globaler Benachrichtigungsebene.
  • Der Benutzer kann den Cache manuell aktualisieren. Durch das Aktualisieren werden sämtliche Kontextinformationen einer Sitzung aus dem Cache gelöscht.
  • Der Cache wird bei Eingang neuer Benachrichtigungen nicht aktualisiert. Um neue Benachrichtigungen zu sehen, muss der Benutzer den Cache selbst manuell aktualisieren oder auf den Cache-Timeout warten. Die Standard-Timeout-Werte finden Sie in der unten stehenden Tabelle.
  • Der Cache reagiert auf manuelle Löschvorgänge von Benachrichtigungen. Wenn der Benutzer eine Benachrichtigung in einer bestimmten Ansicht löscht, wird die Benachrichtigung auch in allen Kontexten im Cache gelöscht.

Der Cache wird über die Eigenschaften in der Konfigurationsdatei bb-config.properties konfiguriert.

Cache-Eigenschaften
Eigenschaft Schlüssel Standardwert
Maximale Anzahl Elemente bbconfig.cache.nautilusCache.elements 500 Sekunden
Time to Live bbconfig.cache.nautilusCache.timetolive 600 Sekunden
Time to Idle bbconfig.cache.nautilusCache.timetoidle 600 Sekunden
Eternal bbconfig.cache.nautilusCache.eternal Nein

Wenn die Leistung im Zusammenhang mit der Modulanzeige Probleme bereitet, können Administratoren diese Einstellungen optimieren, um den Verbleib der Benachrichtigungen im Cache zu verlängern. Hierbei muss ein Kompromiss gefunden werden, denn je größer der Cache, desto mehr veraltete Benachrichtigungen werden angezeigt.

Cache-Einstellungen haben keine Auswirkungen auf die Benachrichtigungsverteilung.

Anpassen der Größe des Benachrichtigungsspeichers

Wie bereits erwähnt, kann der Benachrichtigungsspeicher sehr groß werden, wenn keine entsprechenden Maßnahmen ergriffen werden. In diesem Abschnitt werden einige Strategien erläutert, mit denen verhindert werden kann, dass der Speicher zu groß wird.

Bei Auslieferung sind im System standardmäßig alle Benachrichtigungen aktiviert. Das heißt, alle Benachrichtigungen, die erstellt werden können, werden bei Erstellung für alle unterstützten Ereignisse erstellt. Je nach Größe Ihrer Institution und der Art und Weise, auf die die Kurse zu Beginn des Semesters eingerichtet wurden, kann dies zu sehr großen Tabellen und damit verbundenen Leistungseinbußen führen.

Deaktivieren Sie Benachrichtigungen, die nicht benötigt werden. Legen Sie hierzu auf den Seiten Kurseinstellungen => Standardbenachrichtigungseinstellungen und Organisationseinstellungen => Standardbenachrichtigungseinstellungen für nicht benötigte Benachrichtigungen die Einstellung Immer aus fest.

Alternativ können Sie die Benachrichtigungen mit besonders hoher Wortzahl während arbeitsintensiver Zeiten des Semesters (z. B. während der Erstellung von Kursen) deaktivieren. Sie sollten insbesondere die Inhaltselement verfügbar-Benachrichtigungen während der Erstellung von Kursvorlagen deaktivieren, da diese höchstwahrscheinlich den Großteil der Benachrichtigungslast während dieses Zeitraums ausmachen.

Die Lebensdauer von Benachrichtigungen kann festgelegt werden. Das System wird in regelmäßigen Abständen auf Benachrichtigungen durchsucht, die länger als eine bestimmte Anzahl an Tagen im System vorhanden sind. Die gefundenen Benachrichtigungen werden gelöscht. Die Standardeinstellung ist 120 Tage, was ungefähr der Länge eines Semesters entspricht.

Administratoren können festlegen, wie lange die Benachrichtigungen im System verbleiben, indem sie das Intervall für die Benachrichtigungsbereinigung ändern. Geben Sie einen kleineren Wert ein, um Benachrichtigungen schneller aus dem System zu entfernen. Weitere Informationen finden Sie unter Festlegen von Benachrichtigungsoptionen.

Verwenden Sie diese Einstellung mit Vorsicht. Gelöschte Benachrichtigungen können nicht wieder abgerufen und nur schwer erneut ausgegeben werden.

  1. Nicht benötigte Benachrichtigungen deaktivieren.
  2. Lebensdauer der Benachrichtigungen reduzieren.

Hintergrundaufgaben bei Benachrichtigungen

Das Benachrichtigungssystem ist von zwei Aufgaben abhängig, die beide in der Konfigurationsdatei bb-tasks.xml definiert werden.

Benachrichtigungen – Hintergrundaufgaben
Aufgabenname Intern (Minuten) Verwendung
NotificationRemoveStaleDataTask 5 Diese Aufgabe hat verschiedene Funktionen:
  • Senden von Erinnerungen für fällige Ereignisse. Erinnerungen werden x Tage vor Fälligkeit des Elements gesendet. Die Anzahl der Tage x kann von Benutzern konfiguriert werden.
  • Ändern von fälligen Benachrichtigungen, deren Fälligkeitsdatum überschritten wurde, in überfällige Benachrichtigungen.
  • Senden von E-Mail-Zusammenfassungen zu festgelegten Zeitpunkten. E-Mail-Zusammenfassungen werden einmal täglich zu einem vom Administrator festgelegten Zeitpunkt gesendet.
  • Löschen von veralteten Empfängerdaten. Veraltete Daten sind in diesem Zusammenhang Empfängerdatensätze, die seit x Tagen im System vorhanden sind. Die Anzahl der Tage x kann von Administratoren festgelegt werden. Standardmäßig werden die Empfänger für die Dauer eines gesamten Semesters beibehalten. Dieser Vorgang ist für eine einmal tägliche Ausführung konfiguriert.
DistributionSendNotificationTask 60 Senden von unbearbeiteten Benachrichtigungen an alle registrierten Verteiler.

NotificationRemoveStaleDataTask

Das Standarderinnerungsintervall kann von Administratoren auf der Seite Allgemeine Benachrichtigungseinstellungen festgelegt werden. Er kann außerdem von einzelnen Benutzern auf der Seite Benachrichtigungseinstellungen bearbeitet werden.

Alle fälligen Benachrichtigungen werden in überfällige Ereignisse geändert, wenn das jeweilige Fälligkeitsdatum abgelaufen ist. Dazu gehören: Übung fällig am, Test fällig, Benotbares Element fällig und Umfrage fällig.

Die letzte Funktion dieser Aufgabe (Löschen veralteter Empfängerdaten) wird einmal täglich ausgeführt. Bei jedem Aufruf der Aufgabe wird überprüft, ob der Zeitpunkt der Ausführung der Aufgabe erreicht wurde. Wenn dies der Fall ist, wird die Aufgabe ausgeführt. Der Ausführungszeitpunkt wird durch die Eigenschaft nautilus.staleDataRemove.executionTime in der Konfigurationsdatei nautilus_config.properties festgelegt.

Periodizität der Aufgabe

Das Ändern der Periodizität der Aufgabe hat folgende Auswirkungen:

  1. Ändert den Zeitraum, nach dem fällige Benachrichtigungen in überfällige Benachrichtigungen geändert werden. In der Standardkonfiguration wird der Status der Benachrichtigungen maximal fünf Minuten nach Ablauf ihres jeweiligen Fälligkeitsdatums geändert.
  2. Ändert den Zeitraum, nach dem Erinnerungen gesendet werden. In der Standardkonfiguration werden Erinnerungen maximal fünf Minuten nach Ablauf des Erinnerungszeitpunkts gesendet.
  3. Ändert den Zeitraum, nach dem die Aufgabe zum Löschen veralteter Daten ausgeführt wird. In der Standardkonfiguration wird die Aufgabe innerhalb von fünf Minuten nach dem festgelegten Zeitpunkt ausgeführt.

Leistungserwägungen

Der Aufgabenteil für die Benachrichtigungsbereinigung wird jede Nacht zu einem durch die Eigenschaft nautilus.staleDataRemove.executionTime in der Konfigurationsdatei nautilus_config.properties festgelegten Zeitpunkt ausgeführt. Standardmäßig ist eine tägliche Ausführung um 1:00 Uhr festgelegt.

Diese Anfrage ist äußerst leistungsintensiv, da sie die Tabelle eud_item_recipient vollständig nach veralteten Benachrichtigungen durchsucht und diese löscht.

Wenn diese Aufgabe Ihr System trotz sämtlicher Vorkehrungen bedeutend verlangsamt, können Sie verschiedene Maßnahmen ergreifen:

  1. Ändern des Ausführungszeitpunkts der Aufgabe. In vielen Institutionen werden nachts bereits andere Wartungsaufgaben durchgeführt. Wenn die Aufgabe mit diesen Wartungsaufgaben in Konflikt gerät oder sich die Aufgaben gegenseitig stören, so dass Ihr Datenbankserver zu stark belastet wird, können Sie die Aufgabe zu einem anderen Zeitpunkt ausführen lassen. Bitte beachten Sie jedoch Folgendes: Blackboard rät davon ab, diese Aufgabe tagsüber oder zu einem anderen Zeitpunkt mit starker Auslastung des Systems durch Benutzer auszuführen.
  2. Ergreifen Sie Maßnahmen, um die Größe des Benachrichtigungsspeichers zu reduzieren. Je weniger Benachrichtigungen vorhanden sind, desto schneller wird diese Anfrage ausgeführt. Tipps hierzu finden Sie unter Anpassen der Größe des Benachrichtigungsspeichers

DistributionSendNotificationTask

Um sicherzustellen, dass die Ausführung dieser Aufgabe nicht zu viel Zeit in Anspruch nimmt, wird bei der Ausführung lediglich eine begrenzte Anzahl an Benachrichtigungen bearbeitet. Administratoren können diese Einstellung über die Eigenschaft nautilus.distribution.notificationsPerDistribution in der Konfigurationsdatei nautilus_config.properties festlegen. Die Standardeinstellung ist 10.000.

Die Verteilungsaufgaben senden Benachrichtigungen an alle registrierten Verteiler. Für die meisten Institutionen bedeutet das, dass Benachrichtigungen nur an den E-Mail-Verteiler gesendet werden. Jedes Mal, wenn ein neuer Verteiler hinzugefügt wird, verringert sich die Leistung ein wenig.

Periodizität der Aufgabe

Durch Ändern der Periodizität dieser Aufgabe wird festgelegt, wie oft das System Benachrichtigungen sendet. In der Standardkonfiguration wird eine Benachrichtigung maximal eine Stunde nach Eingabe in das System gesendet.

Die Anzahl der pro Aufruf verteilten Benachrichtigungen wirkt sich auch auf den Zeitpunkt aus, zu dem eine Benachrichtigung gesendet wird. Administratoren können diese Einstellung über die Eigenschaft nautilus.distribution.notificationsPerDistribution in der Konfigurationsdatei nautilus_config.properties festlegen.

Leistungserwägungen

Diese Aufgabe wird relativ häufig ausgeführt. Die Anzahl der bei einer Ausführung bearbeiteten Benachrichtigungen ist jedoch begrenzt. Durch diesen doppelten Verteilungsansatz ist das System in der Lage, verfügbar gemachte Benachrichtigungen schnell zu senden, ohne einen Systemabsturz zu verursachen, insbesondere dann, wenn viele Benachrichtigungen das System belasten (z. B. zu Beginn eines Semesters, wenn neue Kurse online gestellt werden).

Wenn durch den Verteilungsvorgang die Leistung beeinträchtigt wird, reduzieren Sie die Periodizität. Hierdurch wird die Leistung effektiv gesteigert. Wenn die Verteilung zu viel Zeit in Anspruch nimmt, reduzieren Sie die Anzahl der pro Ausführung bearbeiteten Benachrichtigungen.

Wenn Benachrichtigungen nicht schnell genug beim Empfänger ankommen, reduzieren Sie die Periodizität dieser Aufgabe und die Anzahl der pro Ausführung bearbeiteten Benachrichtigungen.

Manche Empfänger werden nicht vollständig entfernt. Das heißt, die zugehörigen Datensätze verbleiben im System, erhalten jedoch den Status GELÖSCHT.