VERTRIEB: 1-800-867-1380

Benachrichtigungen für Azure Managed Cache Service

Letzte Aktualisierung: September 2014

noteHinweis
Hilfestellung bei der Auswahl des für Ihre Anwendung geeigneten Azure Cache-Angebots finden Sie unter Welches Azure-Cacheangebot eigent sich am besten für mich?.

Microsoft Azure Cache stellt Cachebenachrichtigungen bereit, die Anwendungen beim Auftreten einer Vielzahl von Cachevorgängen für einen benannten Cache das Empfangen asynchroner Benachrichtigungen ermöglichen. Cachebenachrichtigungen stellen außerdem eine automatische Ungültigkeitserklärung für lokal zwischengespeicherte Objekte bereit.

Fügen Sie zum Empfangen asynchroner Cachebenachrichtigungen der Anwendung einen Cachebenachrichtigungsrückruf hinzu. Beim Hinzufügen des Rückrufs definieren Sie die Typen von Cachevorgängen, die eine Cachebenachrichtigung auslösen, und die Methoden in Ihrer Anwendung, die beim Auftreten der angegebenen Vorgänge aufgerufen werden sollen. Ein benannter Cache muss Cachebenachrichtigungen abonnieren und diese aktivieren.

noteHinweis
Benachrichtigungen sind in den Cacheangeboten Standard und Premium, aber nicht im Cacheangebot Basic verfügbar. Weitere Informationen finden Sie unter Cacheangebote für Azure Managed Cache Service.

Diese Cachevorgänge werden durch Elemente der Klasse DataCacheOperations definiert.

Anwendungen können beim Auftreten der folgenden Cachevorgänge in einem Bereich Cachebenachrichtigungen empfangen:

Die Anwendung kann Cachebenachrichtigungen empfangen, wenn die folgenden Cachevorgänge für ein zwischengespeichertes Objekt (das im Cache als Element bezeichnet wird) auftreten.

  • AddItem: Wenn dem Cache ein Element hinzugefügt wird.

  • ReplaceItem: Wenn ein Element im Cache ersetzt wird.

  • RemoveItem: Wenn ein Element aus dem Cache entfernt wird.

noteHinweis
Diese Vorgänge hängen an sich nicht vom Auftreten in Bereichen ab. Sie können sich entscheiden, den Benachrichtigungsumfang Ihres Rückrufs auf einen bestimmten Bereich einzuschränken. Dies wird im Abschnitt "Benachrichtigungsumfang" dieses Dokumente erörtert.

Abhängig von der Aktivität und den Erfordernissen Ihrer Anwendung möchten Sie möglicherweise nicht über Ereignisse für alle Objekte und Bereiche im gesamten Cache informiert werden. Sie können den Umfang der Benachrichtigungen von der Cacheebene bis hinunter zur Bereichsebene und Elementebene einschränken. Der beim Hinzufügen eines Rückrufs ausgewählte Benachrichtigungsumfang besitzt großen Einfluss auf die empfangenen Cachebenachrichtigungen.

Auf der Cacheebene können Ihre Anwendungen über alle Cachevorgänge aller Objekte und Bereiche im Cache benachrichtigt werden. Auf der Bereichsebene werden die Anwendungen nur über Cachevorgänge aus einem einzelnen Bereich und die in ihm enthaltenen Objekte benachrichtigt. Auf der Elementebene wird eine Anwendung nur über Cachevorgänge benachrichtigt, die sich auf ein einzelnes Objekt beziehen.

Wählen Sie zum Hinzufügen eines Cachebenachrichtigungsrückrufs eine der folgenden drei Methoden, um den gewünschten Benachrichtigungsumfang anzugeben:

  • AddCacheLevelCallback: Wenn Sie über bereichs- und elementbezogene Cachevorgänge aller Bereiche und Elemente informiert werden möchten.

  • AddRegionLevelCallback: Wenn Sie über bereichs- und elementbezogene Cachevorgänge aus einem bestimmten Bereich informiert werden möchten.

  • AddItemLevelCallback: Wenn Sie über elementbezogene Cachevorgänge für ein bestimmtes Element informiert werden möchten.

Die Reihenfolge der vom Cacheclient empfangenen Benachrichtigungen ist im Kontext eines einzelnen Bereichs garantiert. Nehmen Sie beispielsweise an, dass ein Bereich mit dem Namen RegionA erstellt wurde. Da alle in einen Cachebereich eingestellten Daten auf diesen einen Bereich beschränkt sind, treffen alle Cachevorgänge, die sich auf RegionA beziehen (beim Benachrichtigungsumfang auf Bereichsebene) beim Cacheclient aufeinander bezogen in der passenden Reihenfolge ein. Für bereichs- und elementbezogene Cachevorgänge, die auf anderen Cachehosts aufgetreten sind, kann das Eintreffen in der passenden Reihenfolge bezogen auf die in RegionA aufgetretenen Vorgänge nicht garantiert werden.

Im Sinne optimaler Leistung kann die Reihenfolge von Benachrichtigungen, die mehr als einen Bereich oder Objekte umfassen, die nicht im gleichen Bereich gespeichert sind, nicht garantiert werden.

Versionsinformationen für Elementereignisse in Form des DataCacheItemVersion-Objekts werden mit dem Parameter version an die von der Cachebenachrichtigung aufgerufene Methode übergeben. Dieses DataCacheItemVersion-Objekt entspricht der Version des Objekts, von dem das Elementereignis ausgelöst wurde. Mithilfe der CompareTo-Methode können Versionsvergleiche durchgeführt werden, um zu bestimmen, welche Cachevorgänge zuerst erfolgt sind.

noteHinweis
Versionsvergleiche sind nur sinnvoll, wenn Versionen des gleichen Elements, die mit dem gleichen Schlüssel angegeben werden, verglichen werden. Es ist nicht möglich, die Reihenfolge durch den Vergleich von Versionen aus verschiedenen Schlüsseln abzuleiten. Die CompareTo-Methode gibt möglicherweise ein Ergebnis zurück, das Ergebnis ist jedoch nur für Versionen des gleichen Schlüssels gültig.

Wenn Sie Cachebenachrichtigungen verwenden, überprüft die Anwendung den Cache in regelmäßigen Intervallen auf neue verfügbare Benachrichtigungen. Dieses Intervall, das als Abfrageintervall bezeichnet wird, beträgt standardmäßig 300 Sekunden. Für Anwendungen mit häufigen Schreibvorgängen kann ein kleinerer Wert festgelegt werden. Für Caches, die sich nicht häufig ändern, eignet sich ggf. ein größeres Intervall besser. Der Standardwert von 300 Sekunden ist für die meisten allgemeinen Caches gut geeignet.

Das Abfrageintervall wird in den Anwendungskonfigurationseinstellungen in Sekundeneinheiten angegeben. Zum Angeben eines bestimmten Intervalls können Sie das pollInterval-Attribut des clientNotifications-Elements in der Anwendungskonfigurationsdatei verwenden. Ferner können Sie ein bestimmtes Abrufintervall programmgesteuert mithilfe der NotificationProperties-Eigenschaft des DataCacheFactoryConfiguration-Objekts angeben.

Microsoft Azure Cache kann nur eine bestimmte Menge von Cachevorgängen im Arbeitsspeicher speichern. Es kann geschehen, dass einige Cacheclients Benachrichtigungen nicht erhalten, bevor diese in den Benachrichtigungswarteschlangen abgeschnitten werden. Cacheclients verpassen ggf. auch Benachrichtigungen, wenn Daten aufgrund eines Cachefehlers verloren gehen. In diesen Fällen kann der Cacheclient mithilfe von Fehlerbenachrichtigungen feststellen, dass er einige Cachebenachrichtungen verpasst hat. Die Anwendung kann mithilfe der Methode AddFailureNotificationCallback einen Rückruf hinzufügen,um Fehlerbenachrichtungen zu empfangen. Weitere Informationen finden Sie unter How to: Add a Failure Notification Callback.

Es besteht ein wichtiger Unterschied zwischen dem Verlust von Benachrichtigungen und dem Verlust des Caches. Wenn die Anwendung Benachrichtigungen verpasst, kann ihr dieser Verlust mithilfe einer Fehlerberichtigung zur Kenntnis gebracht werden. Wenn der gesamte Cache gelöscht wird, löst der Cacheclient beim nächsten Versuch, den Cache zu verwenden, Ausnahmen aus, wenn er keine Verbindung mit dem Cacheendpunkt herstellen kann. Cacheereignisse wie etwa die Erstellung oder Löschung eines benannten Caches werden von Benachrichtigungen nicht gemeldet. Wenn ein benannter Cache gelöscht wird, nachdem Benachrichtigungen registriert wurden, erhalten Sie einfach keine Benachrichtigungen mehr. Es ist nicht möglich, eine Entscheidung zu treffen, ob ein benannter Cache nicht vorhanden ist oder Vorgänge nicht für einen benannten Cache ausgeführt werden.

noteHinweis
Cachebenachrichtigungen melden nur datenbezogene Änderungen an Bereichen und Cacheelementen im Cache, sie melden jedoch keine Ereignisse des Caches selbst.

Benachrichtigungen werden auf der Ebene benannter Caches im Verwaltungsportal auf der Registerkarte Konfigurieren für den Cache konfiguriert. Die Standardeinstellung für Benachrichtigungen ist Deaktiviert.

Cachebenachrichtigungen für Windows Azure Cache Service

Es sind keine Anwendungskonfigurationseinstellungen zum Hinzufügen eines Rückrufs zum Empfangen von Cachebenachrichtigungen erforderlich. Die Anwendungskonfigurationseinstellungen können verwendet werden, um ein bestimmtes Abrufintervall anzugeben. Standardmäßig beträgt das Abrufintervall 300 Sekunden. Wenn Sie eine andere Dauer benötigen, verwenden Sie das clientNotification-Element in der XML-basierten Anwendungskonfigurationsdatei, oder geben Sie das gewünschte Intervall programmgesteuert mithilfe der Eigenschaft NotificationsProperties des DataCacheFactoryConfiguration-Objekts an.

Nach dem Aktivieren von Cachebenachrichtigungen sind drei Aufgaben im Zusammenhang mit der Verwendung von Cachebenachrichtigungen auszuführen: Hinzufügen von Cachebenachrichtigungsrückrufen, Hinzufügen eines Fehlerbenachrichtigungsrückrufs und Entfernen von Cachebenachrichtigungsrückrufen. Die Vorgehensweisen für jede dieser drei Aufgaben werden in der restlichen Dokumentation beschrieben.

Siehe auch

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.
Anzeigen:
© 2014 Microsoft