Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les notifications d’espace de clés Redis permettent aux clients de s’abonner aux canaux Pub/Sub pour recevoir des événements qui affectent la base de données Redis de quelque manière que ce soit. Utilisez des notifications d’espaces de clés (aperçu) pour surveiller les modifications apportées aux clés et aux valeurs dans votre cache Redis géré Azure.
Cet article explique comment déployer un cache avec des notifications d’espace de clés activés, connecter des clients à l’aide de commandes Redis, s’abonner aux canaux de notification et tester les événements résultants.
Prerequisites
Redis Insight ou outil en ligne de commande
redis-cli. Pour connaître les étapes d’installation, consultez Utilisez les outils clients pour gérer les données dans Azure Redis managé.Note
Lorsque vous utilisez les outils clients Redis, nous vous recommandons d’utiliser Microsoft Entra ID authentification pour Azure Redis managée lorsqu’elle est disponible.
Compréhension des modèles Azure Resource Manager (ARM). Pour plus d’informations, consultez Azure Resource Manager documentation.
Pour Azure CLI :
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Commencer avec Azure Cloud Shell.
Si vous préférez exécuter des commandes de référence CLI localement, installation la Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d'exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez How to run the Azure CLI in a Docker container.
Si vous utilisez une installation locale, connectez-vous au Azure CLI à l'aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez Authenticate pour Azure à l’aide de Azure CLI.
Lorsque vous y êtes invité, installez l'extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utilisez et gérez les extensions avec le Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Déployer un cache avec des notifications de keyspace qui sont activées
Dans cet exemple, utilisez un modèle ARM Azure Resource Manager et la CLI Azure pour déployer un cache Redis géré par Azure avec des notifications de keyspace activées.
Modifiez les paramètres CacheName et Region dans le modèle suivant, puis enregistrez le fichier sous KeyspaceTemplate.json.
Note
La notifyKeyspaceEvents valeur de « KEA » active les notifications de keyspace pour la majorité des événements. Au moins « K » OU « E » est nécessaire pour recevoir des notifications d’espace de clés. Consultez la documentation sur les notifications d’espace de clés Redis pour plus d’informations sur les différents types d’événements et sur la configuration des notifications pour eux.
{
"$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"
}
}
]
}
Déployez le modèle à l’aide de la commande az deployment group create Azure CLI. Dans l’exemple suivant, le déploiement se trouve dans le groupe de ressources exampleRG.
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Connecter des clients Redis
À l’aide de Redis Insight ou redis-cli, ouvrez deux sessions CLI et connectez les deux clients au cache.
Utilisez un terminal comme abonné qui reçoit des notifications d’espace de clés et l’autre en tant qu’opérateur qui exécute des commandes Redis.
Vérifier et s’abonner aux événements
Dans l’un ou l’autre terminal, vérifiez que la chaîne de notification est configurée.
CONFIG GET notify-keyspace-events
Dans le terminal de l’abonné, choisissez le modèle d’abonnement qui correspond aux événements que vous souhaitez observer. Voici quelques exemples :
Abonnez-vous à tous les événements et à toutes les clés :
PSUBSCRIBE __keyevent@0__:* __keyspace@0__:*Abonnez-vous à un type d’événement spécifique :
SUBSCRIBE __keyevent@0__:setAbonnez-vous à une clé spécifique :
SUBSCRIBE __keyspace@0__:mykey
Notifications de test
Basculez vers le terminal opérateur et exécutez quelques commandes Redis sur une clé de test.
SET mykey "hello"
EXPIRE mykey 10
DEL mykey
Le terminal de l’abonné indique quels événements se sont produits et quelles clés ont été affectées.
Dans la capture d’écran suivante, le terminal de l’abonné est à gauche, abonné à tous les événements et à toutes les clés, de sorte qu’il reçoit des notifications pour tous les événements qui se produisent dans le cache. Le terminal opérateur se trouve à droite, où les commandes Redis sont émises sur différentes clés.
Mettre à jour les paramètres de notification
Vous pouvez modifier la configuration de notification d’espace de clés ultérieurement sans recréer le cache.
- Mettez à jour la valeur de
notifyKeyspaceEventsdansKeyspaceTemplate.jsontout en conservantCacheNameetRegionidentiques. - Redéployez le modèle.
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Le redéploiement met à jour les paramètres de notification sans perte de données, ce qui vous permet d’activer, de désactiver ou de modifier les événements suivis, par exemple en passant de KEA à Ex pour suivre uniquement les événements d’expiration.
Note
Si vous mettez à jour les paramètres de notification sur un cache existant qui n’a pas été déployé via le modèle ARM indiqué précédemment, vous pouvez configurer votre propre modèle pour définir la notifyKeyspaceEvents propriété. Vérifiez que le modèle inclut le cluster de cache et les configurations de base de données existants pour éviter de remplacer d’autres propriétés de cache.