Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Redis-Schlüsselraumnachrichten ermöglichen es Clients, sich bei Pub/Sub-Kanälen anzumelden, um Ereignisse zu empfangen, die auf irgendeine Weise den Redis-Datensatz beeinflussen. Verwenden Sie Keyspacebenachrichtigungen (Vorschau), um Änderungen an Schlüsseln und Werten in Ihrem Azure Verwalteten Redis-Cache zu überwachen.
In diesem Artikel wird gezeigt, wie Sie einen Cache mit aktivierten Keyspacebenachrichtigungen bereitstellen, Clients mithilfe von Redis-Befehlen verbinden, Benachrichtigungskanäle abonnieren und die resultierenden Ereignisse testen.
Voraussetzungen
Redis Insight oder
redis-cliBefehlszeilentool. Installationsschritte finden Sie unter Use client tools to manage data in Azure Managed Redis.Hinweis
Wenn Sie Redis-Clienttools verwenden, empfehlen wir die Verwendung der Microsoft Entra ID-Authentifizierung für verwaltetes Azure Redis, wenn verfügbar.
Grundlegendes zu Azure Resource Manager (ARM)-Vorlagen. Weitere Informationen finden Sie in der Dokumentation Azure Resource Manager.
Für Azure CLI:
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Get started with Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen möchten, install die Azure CLI. Wenn Sie Windows oder macOS verwenden, ziehen Sie in Betracht, Azure CLI in einem Docker-Container auszuführen. Weitere Informationen finden Sie unter How to run the Azure CLI in a Docker container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mit dem Befehl az login beim Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Weitere Anmeldeoptionen finden Sie unter Authentifizieren bei Azure mithilfe von Azure CLI.
Wenn Sie dazu aufgefordert werden, installieren Sie die Azure CLI Erweiterung bei der ersten Verwendung. Weitere Informationen zu Erweiterungen finden Sie unter Use and manage extensions with the Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um auf die neueste Version zu aktualisieren.
Bereitstellen eines Caches mit aktivierten Keyspace-Benachrichtigungen
Verwenden Sie in diesem Beispiel eine Azure Resource Manager (ARM)-Vorlage und die Azure CLI, um einen verwalteten Azure Redis-Cache mit aktivierten Keyspace-Benachrichtigungen bereitzustellen.
Ändern Sie die Parameter CacheName und Region in der folgenden Vorlage, und speichern Sie die Datei unter KeyspaceTemplate.json.
Hinweis
Der notifyKeyspaceEvents Wert von "KEA" ermöglicht Keyspace-Benachrichtigungen für die meisten Ereignisse. Entweder "K" oder "E" ist erforderlich, um Keyspace-Benachrichtigungen zu erhalten. Weitere Informationen zu den verschiedenen Ereignistypen und zum Konfigurieren von Benachrichtigungen für diese finden Sie in der Redis Keyspace-Benachrichtigungsdokumentation .
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"cachename": {
"defaultValue": "{CacheName}",
"type": "String"
},
"region": {
"defaultValue": "{Region}",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Cache/redisEnterprise",
"apiVersion": "2026-02-01-preview",
"name": "[parameters('cachename')]",
"location": "[parameters('region')]",
"sku": {
"name": "Balanced_B5"
},
"identity": {
"type": "None"
},
"properties": {
"minimumTlsVersion": "1.2",
"publicNetworkAccess": "Enabled"
}
},
{
"type": "Microsoft.Cache/redisEnterprise/databases",
"apiVersion": "2026-02-01-preview",
"name": "[concat(parameters('cachename'), '/default')]",
"dependsOn": [
"[resourceId('Microsoft.Cache/redisEnterprise', parameters('cachename'))]"
],
"properties": {
"clientProtocol": "Encrypted",
"port": 10000,
"clusteringPolicy": "OSSCluster",
"evictionPolicy": "NoEviction",
"persistence": {
"aofEnabled": false,
"rdbEnabled": false
},
"notifyKeyspaceEvents": "KEA"
}
}
]
}
Stellen Sie die Vorlage mithilfe des Befehls az deployment group create Azure CLI bereit. In dem folgenden Beispiel befindet sich die Bereitstellung in der Ressourcengruppe exampleRG.
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Verbinden von Redis-Clients
Verwenden Sie entweder Redis Insight oder redis-cli, um zwei CLI-Sitzungen zu öffnen und beide Clients mit dem Cache zu verbinden.
Verwenden Sie ein Terminal als Abonnent, der Zugriffstastenbenachrichtigungen empfängt, und die andere als Operator, der Redis-Befehle ausführt.
Überprüfen und Abonnieren von Ereignissen
Vergewissern Sie sich in beiden Terminalen, dass die Benachrichtigungszeichenfolge konfiguriert ist.
CONFIG GET notify-keyspace-events
Wählen Sie im Abonnentterminal das Abonnementmuster aus, das den Ereignissen entspricht, die Sie beobachten möchten. Es folgen Beispiele:
Abonnieren Sie alle Ereignisse und alle Schlüssel:
PSUBSCRIBE __keyevent@0__:* __keyspace@0__:*Ein Abonnement für einen bestimmten Ereignistyp:
SUBSCRIBE __keyevent@0__:setAbonnieren Sie einen bestimmten Schlüssel:
SUBSCRIBE __keyspace@0__:mykey
Testen von Benachrichtigungen
Wechseln Sie zum Operatorterminal, und führen Sie einige Redis-Befehle für einen Testschlüssel aus.
SET mykey "hello"
EXPIRE mykey 10
DEL mykey
Das Abonnentterminal zeigt an, welche Ereignisse aufgetreten sind und welche Schlüssel betroffen waren.
Im folgenden Screenshot befindet sich das Abonnententerminal auf der linken Seite, abonniert für alle Ereignisse und alle Schlüssel, sodass sie Benachrichtigungen für alle Ereignisse empfängt, die im Cache auftreten. Das Bedienterminal befindet sich rechts, wo Redis-Befehle gegen verschiedene Tasten ausgegeben werden.
Aktualisierung der Benachrichtigungseinstellungen
Sie können die Keyspacebenachrichtigungskonfiguration später ändern, ohne den Cache neu zu erstellen.
- Aktualisieren Sie den
notifyKeyspaceEvents-Wert inKeyspaceTemplate.json, währendCacheNameundRegiongleich bleiben. - Stellen Sie die Vorlage erneut bereit.
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Durch erneutes Bereitstellen werden die Benachrichtigungseinstellungen ohne Datenverlust aktualisiert, sodass Sie die nachverfolgten Ereignisse aktivieren, deaktivieren oder ändern können, z. B. indem Sie von KEA zu Ex wechseln, um ausschließlich Ablaufereignisse zu verfolgen.
Hinweis
Wenn Sie die Benachrichtigungseinstellungen für einen vorhandenen Cache aktualisieren, der nicht über die zuvor gezeigte ARM-Vorlage bereitgestellt wurde, können Sie ihre eigene Vorlage so konfigurieren, dass die notifyKeyspaceEvents Eigenschaft festgelegt wird. Stellen Sie sicher, dass die Vorlage die vorhandenen Cachecluster- und Datenbankkonfigurationen enthält, um zu vermeiden, dass andere Cacheeigenschaften überschrieben werden.