Vue d’ensemble des fonctions Azure pour Azure Cache pour Redis
Cet article explique comment utiliser Azure Cache pour Redis avec Azure Functions pour créer des architectures serverless et basées sur les événements optimisées.
Azure Functions fournissent un modèle de programmation piloté par les événements où les déclencheurs et les liaisons sont des fonctionnalités clés. Avec Azure Functions, vous pouvez facilement créer des applications serverless pilotées par les événements. Azure Cache pour Redis fournit un ensemble de blocs de construction et de meilleures pratiques pour la création d’applications distribuées, y compris les microservices, la gestion de l’état, la messagerie pub/sub, et plus encore.
Azure Cache pour Redis peut être utilisé comme déclencheur pour Azure Functions, ce qui vous permet de lancer un workflow serverless. Cette fonctionnalité peut être très utile dans les architectures de données telles qu’un cache en écriture-behind ou toutes les architectures basées sur les événements.
Vous pouvez intégrer Azure Cache pour Redis et Azure Functions pour créer des fonctions qui réagissent aux événements provenant d’Azure Cache pour Redis ou de systèmes externes.
Action | Sens | Niveau de support |
---|---|---|
Déclencheur sur les sous-messages de publication Redis | Déclencheur | Aperçu |
Déclencheur sur les listes Redis | Déclencheur | Aperçu |
Déclencheur sur les flux Redis | Déclencheur | Aperçu |
Lire une valeur mise en cache | Input | Aperçu |
Écrire des valeurs dans le cache | Sortie | Aperçu |
Étendue de la disponibilité pour les déclencheurs et liaisons de fonctions
Niveau | De base | Standard, Premium | Enterprise, Enterprise Flash |
---|---|---|---|
Pub/Sub | Oui | Oui | Oui |
Listes | Oui | Oui | Oui |
Flux | Oui | Oui | Oui |
Liaisons | Oui | Oui | Oui |
Important
Les déclencheurs Redis sont actuellement pris en charge uniquement pour les fonctions s’exécutant dans un plan Elastic Premium ou un plan App Service dédié.
Installer l’extension
Les fonctions s’exécutent dans un processus de travail C# isolé. Pour en savoir plus, consultez Guide pour l’exécution d’Azure Functions C# dans un processus Worker isolé.
Ajoutez l’extension à votre projet en installant ce package NuGet.
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Redis --prerelease
Installer le bundle
Créer un projet de fonction Java. Vous pouvez utiliser Maven :
mvn archetype:generate -DarchetypeGroupId=com.microsoft.azure -DarchetypeArtifactId=azure-functions-archetype -DjavaVersion=8
Ajoutez l’extension en préversion en ajoutant ou en remplaçant le code suivant dans votre fichier host.json :
{ "version": "2.0", "extensionBundle": { "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", "version": "[4.11.*, 5.0.0)" } }
Avertissement
L’extension Redis est actuellement disponible uniquement dans une préversion de l’offre groupée.
Ajoutez la bibliothèque Java pour les liaisons Redis au
pom.xml
fichier :<dependency> <groupId>com.microsoft.azure.functions</groupId> <artifactId>azure-functions-java-library-redis</artifactId> <version>${azure.functions.java.library.redis.version}</version> </dependency>
Ajoutez l’extension en préversion en ajoutant ou en remplaçant le code suivant dans votre fichier host.json :
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
"version": "[4.11.*, 5.0.0)"
}
}
Avertissement
L’extension Redis est actuellement disponible uniquement dans une préversion de l’offre groupée.
Chaîne de connexion Redis
Azure Cache pour Redis déclencheurs et liaisons ont une propriété requise pour la chaîne de connexion du cache. La chaîne de connexion se trouve dans le menu Touches d’accès du portail Azure Cache pour Redis. Le déclencheur ou la liaison Redis recherche une variable d’environnement contenant la chaîne de connexion avec le nom passé au Connection
paramètre .
Dans le développement local, le Connection
peut être défini à l’aide du fichier local.settings.json. Lors du déploiement sur Azure, les paramètres d’application peuvent être utilisés.
Lors de la connexion à une instance de cache avec une fonction Azure, vous pouvez utiliser trois types de connexions dans vos déploiements : chaîne de connexion, identité managée affectée par le système et identité managée affectée par l’utilisateur
Pour le développement local, vous pouvez également utiliser des secrets de principal de service.
Utilisez la appsettings
commande pour configurer chacun des types d’authentification client suivants, en supposant que le Connection
paramètre a été défini Redis
dans la fonction.
Connection string
"Redis": "<cacheName>.redis.cache.windows.net:6380,password=..."
Identité managée affectée par le système
"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>"
Identité managée affectée par l’utilisateur
"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>",
"Redis:clientId": "<clientId>"
Secret du principal de service
Les connexions utilisant les secrets du principal de service sont disponibles uniquement pendant le développement local.
"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>",
"Redis:clientId": "<clientId>"
"Redis:tenantId": "<tenantId>"
"Redis:clientSecret": "<clientSecret>"