Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Redis-keyspace-meddelanden gör det möjligt för klienter att prenumerera på Pub/Sub-kanaler för att ta emot händelser som påverkar Redis-datauppsättningen på ett visst sätt. Använd keyspace-meddelanden (förhandsversion) för att övervaka ändringar av nycklar och värden i din Azure Managed Redis-cache.
Den här artikeln visar hur du distribuerar en cache med keyspace-meddelanden aktiverade, ansluter klienter med Redis-kommandon, prenumererar på meddelandekanaler och testar de resulterande händelserna.
Förutsättningar
Redis Insight eller
redis-clikommandoradsverktyget. Installationssteg finns i Använd klientverktyg för att hantera data i Azure Managed Redis.Anmärkning
När du använder Redis-klientverktyg rekommenderar vi att du använder Microsoft Entra ID-autentisering till Azure Managed Redis när det är tillgängligt.
Förståelse för Azure Resource Manager (ARM)-mallar. Mer information finns i dokumentationen Azure Resource Manager.
För Azure CLI:
Använd Bash-miljön i Azure Cloud Shell. Mer information finns i Hämta igång med Azure Cloud Shell.
Om du föredrar att köra CLI-referenskommandon lokalt install Azure CLI. Om du kör på Windows eller macOS kan du överväga att köra Azure CLI i en Docker-container. Mer information finns i Hur du kör Azure CLI i en Docker-container.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. För att avsluta autentiseringsprocessen, följ stegen som visas i din terminal. Andra inloggningsalternativ finns i Authenticate to Azure using Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda och hantera tillägg med Azure CLI.
Kör az version för att ta reda på versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
Distribuera en cache med keyspace-meddelanden aktiverade
I det här exemplet använder du en Azure Resource Manager-mall (ARM) och Azure CLI för att distribuera en Azure Hanterad Redis-cache med keyspace-meddelanden aktiverade.
Ändra parametrarna CacheName och Region i följande mall och spara filen som KeyspaceTemplate.json.
Anmärkning
Värdet notifyKeyspaceEvents för "KEA" aktiverar keyspace-meddelanden för de flesta händelser. Minst "K" ELLER "E" krävs för att ta emot keyspace-meddelanden. För mer information om de olika händelsetyperna och hur du konfigurerar aviseringar för dem, se Redis-dokumentationen om nyckelrymdsaviseringar.
{
"$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"
}
}
]
}
Distribuera mallen med kommandot az deployment group create Azure CLI. I följande exempel finns distributionen i resursgruppen exampleRG .
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Ansluta Redis-klienter
Med antingen Redis Insight eller redis-cliöppnar du två CLI-sessioner och ansluter båda klienterna till cacheminnet.
Använd en terminal som prenumerant som tar emot keyspace-meddelanden och den andra som operatorn som kör Redis-kommandon.
Verifiera och prenumerera på händelser
Bekräfta att meddelandesträngen är konfigurerad i någon av terminalerna.
CONFIG GET notify-keyspace-events
I prenumerantterminalen väljer du det prenumerationsmönster som matchar de händelser som du vill observera. Följande är exempel:
Prenumerera på alla händelser och alla nycklar:
PSUBSCRIBE __keyevent@0__:* __keyspace@0__:*Prenumerera på en viss händelsetyp:
SUBSCRIBE __keyevent@0__:setPrenumerera på en specifik nyckel:
SUBSCRIBE __keyspace@0__:mykey
Testa aviseringar
Växla till operatorterminalen och kör några Redis-kommandon mot en testnyckel.
SET mykey "hello"
EXPIRE mykey 10
DEL mykey
Prenumerantterminalen visar vilka händelser som inträffade och vilka nycklar som påverkades.
I följande skärmbild är prenumerantterminalen till vänster, prenumererar på alla händelser och alla nycklar, så den tar emot meddelanden om alla händelser som inträffar i cacheminnet. Operatorterminalen är till höger, där Redis-kommandon utfärdas mot olika nycklar.
Uppdatera meddelandeinställningar
Du kan ändra konfigurationen av keyspace-meddelanden senare utan att återskapa cacheminnet.
- Uppdatera värdet
notifyKeyspaceEventsiKeyspaceTemplate.jsonsamtidigt som du behållerCacheNameochRegionsamma. - Återanvänd mallen.
az deployment group create --resource-group exampleRG --template-file KeyspaceTemplate.json
Omdistributionen uppdaterar meddelandeinställningarna utan dataförlust, vilket gör att du kan aktivera, inaktivera eller ändra händelser som spåras, till exempel ändra från KEA till Ex för att endast spåra förfallohändelser.
Anmärkning
Om du uppdaterar meddelandeinställningarna i ett befintligt cacheminne som inte har distribuerats via ARM-mallen som visades tidigare kan du konfigurera din egen mall för att ange notifyKeyspaceEvents egenskapen. Se till att mallen innehåller det befintliga cacheklustret och databaskonfigurationerna för att undvika att skriva över andra cacheegenskaper.