Partager via


Démarrage rapide : Utiliser Azure Cache pour Redis avec une application web ASP.NET Core

Dans ce guide de démarrage rapide, vous incorporez Azure Cache pour Redis à une application web ASP.NET Core qui se connecte à Azure Cache pour Redis afin de stocker et récupérer des données du cache.

Il existe également des fournisseurs de mise en cache dans .NET Core. Pour commencer rapidement à utiliser Redis avec des modifications minimales apportées à votre code existant, consultez :

Passer au code sur GitHub

Clonez le dépôt GitHub https://github.com/Azure-Samples/azure-cache-redis-samples et accédez au répertoire quickstart/aspnet-core afin d’afficher le code source complet pour les étapes à suivre.

Le répertoire quickstart/aspnet-core est également configuré en tant que modèle Azure Developer CLI (azd). Utilisez l’outil open source azd pour simplifier l’approvisionnement et le déploiement à partir d’un environnement local vers Azure. Si vous le souhaitez, exécutez la commande azd up pour provisionner automatiquement une instance Azure Cache pour Redis et configurer l’exemple d’application local pour s’y connecter :

azd up

Explorer l’exemple eShop

À l’étape suivante, vous pouvez voir une application eShop de scénario réel illustrant les fournisseurs de mise en cache de base ASP.NET : ASP.NET core eShop à l’aide de fournisseurs de mise en cache Redis.

Fonctionnalités incluses :

  • Mise en cache distribuée Redis
  • Fournisseur d’état de session Redis

Les instructions de déploiement se trouvent dans la README.md.

Prérequis

Création d'un cache

  1. Pour créer un cache, connectez-vous au portail Azure, puis sélectionnez Créer une ressource.

    Créer une ressource est mis en évidence dans le volet de navigation de gauche.

  2. Dans la page Démarrer, tapez Azure Cache pour Redis dans la zone de recherche. Sélectionnez ensuite Create (Créer).

    Capture d’écran de la Place de marché Azure avec Azure Cache pour Redis dans la zone de recherche et Créer est mis en évidence avec un encadré rouge.

  3. Dans la page Nouveau Cache Redis, configurez les paramètres de votre cache.

    Setting Choisir une valeur Description
    Abonnement Dans la liste déroulante, sélectionnez votre abonnement. Abonnement sous lequel créer cette nouvelle instance d’Azure Cache pour Redis.
    Groupe de ressources Dans la liste déroulante, sélectionnez un groupe de ressources ou choisissez Créer nouveau, puis entrez un nouveau nom de groupe de ressources. Nom du groupe de ressources dans lequel créer votre cache et d’autres ressources. En plaçant toutes les ressources de votre application dans un seul groupe de ressources, vous pouvez facilement les gérer ou les supprimer ensemble.
    Nom DNS Entrez un nom unique. Le nom du cache doit être une chaîne de 1 à 63 caractères ne contenant que des chiffres, des lettres ou des traits d’union. Le nom doit commencer et se terminer par un chiffre ou une lettre, et ne peut pas contenir de traits d’union consécutifs. Le nom d’hôte de votre instance de cache est <nom DNS>.redis.cache.windows.net.
    Lieu Dans la liste déroulante, sélectionnez un emplacement. Choisissez une Région proche d’autres services qui utilisent votre cache.
    Référence SKU du cache Déroulez la liste et sélectionnez une référence SKU. La référence SKU détermine la taille, le niveau de performance et les fonctionnalités disponibles pour le cache. Pour plus d’informations, consultez Présentation du cache Azure pour Redis.
    Taille du cache Déroulez la liste et sélectionnez une taille pour votre cache Pour plus d’informations, consultez Présentation du cache Azure pour Redis.
  4. Sélectionnez l’onglet Réseau ou sélectionnez le bouton Réseau au bas de la page.

  5. Sous l’onglet Réseau, sélectionnez votre méthode de connectivité.

  6. Sélectionnez l’onglet Suivant : Avancé ou sélectionnez le bouton Suivant : Avancé en bas de la page pour afficher l’onglet Avancé.

    Capture d’écran montrant l’onglet Avancé dans le volet de travail et l’option pouvant être sélectionnée.

  7. Cochez la case pour activer Microsoft Entra Authentication.

    Important

    Pour une sécurité optimale, Microsoft recommande d’utiliser dans la mesure du possible Microsoft Entra ID avec des identités managées pour autoriser les requêtes sur votre cache. L’autorisation avec Microsoft Entra ID et les identités managées offre davantage de sécurité et de facilité d’utilisation que l’autorisation de clé partagée. Pour plus d’informations sur l’utilisation d’identités managées avec vos caches, consultez Utiliser Microsoft Entra ID pour l’authentification auprès du cache.

  8. Sélectionnez l’onglet Suivant : Avancé ou sélectionnez le bouton Suivant : Étiquettes au bas de la page.

  9. Si vous le voulez, sous l’onglet Étiquettes, entrez le nom et la valeur si vous souhaitez catégoriser la ressource.

  10. Sélectionnez Revoir + créer. Vous êtes redirigé vers l’onglet Vérifier + créer où Azure valide votre configuration.

  11. Une fois que le message vert Validation réussie s’affiche, sélectionnez Créer.

La création d’un cache prend un certain temps. Vous pouvez surveiller la progression dans la page Vue d’ensemble du Azure Cache pour Redis. Lorsque État indique En cours d’exécution, le cache est prêt pour utilisation.

Récupérer le nom d’hôte à partir du portail Azure

Le client de cache a besoin du nom d’hôte et du port pour que le cache se connecte à votre serveur Azure Cache pour Redis. Certains clients peuvent référencer ces éléments par des noms légèrement différents. Vous pouvez obtenir le nom d’hôte et les ports à partir du portail Azure.

  • Sélectionnez Vue d’ensemble dans le menu Ressource. Le nom d’hôte est de la forme <DNS-name>.redis.cache.windows.net.

    Capture d’écran montrant les propriétés d’Azure Cache pour Redis avec le nom d’hôte encadré en rouge.

Ajouter la stratégie d’accès Redis

Vous devez affecter une stratégie d’accès aux données à l’identité qui accède à Azure Cache pour Redis. Dans cet exemple, vous affectez une stratégie d’accès aux données au même compte Microsoft Entra ID que vous utilisez pour vous connecter à Azure CLI ou Visual Studio.

  1. Sélectionnez Paramètres menu Ressource dans le cache, puis sélectionnez la Configuration de l’accès aux données.

  2. Sur la page Configuration de l’accès aux données, sélectionnez Ajouter > Nouvel utilisateur Redis dans la navigation supérieure.

    Capture d’écran montrant l’écran de configuration de l’accès aux données.

  3. Sur la page Nouvel utilisateur Redis, sélectionnez la stratégie Contributeur de données, puis sélectionnez Suivant : Utilisateurs Redis.

  4. Choisissez + Sélectionner un membre pour ouvrir le menu volant. Recherchez votre compte d’utilisateur et sélectionnez-le dans les résultats.

    Capture d’écran montrant l’onglet utilisateur Redis dans le volet de travail avec le membre sélectionné mis en évidence par un encadré rouge.

  5. Sélectionnez Vérifier + affecter pour attribuer la stratégie à l’utilisateur sélectionné.

Ajouter un secret local pour le nom d’hôte

Dans la fenêtre de commande, exécutez la commande suivante pour stocker un nouveau secret nommé RedisHostName, après avoir remplacé les espaces réservés (y compris les crochets pointus) pour le nom de cache et la clé d’accès principale :

dotnet user-secrets set RedisHostName "<cache-name>.redis.cache.windows.net"

Se connecter au cache avec RedisConnection

La classe RedisConnection gère la connexion à votre cache. La connexion est établie dans cette instruction dans HomeController.cs le dossier Contrôleurs :

_redisConnection = await _redisConnectionFactory;

La classe RedisConnection.cs inclut les espaces de noms StackExchange.Redis et Azure.Identity en haut du fichier afin d’inclure des types essentiels pour se connecter à Azure Cache pour Redis.

using StackExchange.Redis;
using Azure.Identity;

Le code RedisConnection garantit qu’il existe toujours une connexion saine au cache en gérant l’instance de ConnectionMultiplexer à partir de StackExchange.Redis. La classe RedisConnection recrée la connexion lorsqu’une connexion est perdue et ne peut pas se reconnecter automatiquement.

Pour plus d’informations, consultez StackExchange.Redis et le code dans un référentiel GitHub.

Vues de disposition dans l’exemple

La mise en page d’accueil de cet exemple est stockée dans le fichier _Layout.cshtml. À partir de cette page, vous démarrez le test de cache réel en cliquant sur Test Azure Cache pour Redis à partir de cette page.

  1. Ouvrez Views\Shared\_Layout.cshtml.

  2. Vous devriez en voir dans <div class="navbar-header"> :

    <a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="RedisCache">Azure Cache for Redis Test</a>
    

Capture d’écran de la page d’accueil.

Affichage des données à partir du cache

Dans la page d’accueil, sélectionnez Test Azure Cache pour Redis pour afficher l’exemple de sortie.

  1. Dans l’Explorateur de solutions, développez le dossier Vues et cliquez avec le bouton droit sur le dossier Accueil.

  2. Vous devriez voir ce code dans le fichier RedisCache.cshtml.

    @{
        ViewBag.Title = "Azure Cache for Redis Test";
    }
    
    <h2>@ViewBag.Title.</h2>
    <h3>@ViewBag.Message</h3>
    <br /><br />
    <table border="1" cellpadding="10">
        <tr>
            <th>Command</th>
            <th>Result</th>
        </tr>
        <tr>
            <td>@ViewBag.command1</td>
            <td><pre>@ViewBag.command1Result</pre></td>
        </tr>
        <tr>
            <td>@ViewBag.command2</td>
            <td><pre>@ViewBag.command2Result</pre></td>
        </tr>
        <tr>
            <td>@ViewBag.command3</td>
            <td><pre>@ViewBag.command3Result</pre></td>
        </tr>
        <tr>
            <td>@ViewBag.command4</td>
            <td><pre>@ViewBag.command4Result</pre></td>
        </tr>
        <tr>
            <td>@ViewBag.command5</td>
            <td><pre>@ViewBag.command5Result</pre></td>
        </tr>
    </table>
    

Exécutez l’application localement.

  1. Exécutez la commande suivante dans la fenêtre de commande pour générer l’application :

    dotnet build
    
  2. Exécutez ensuite l’application avec la commande suivante :

    dotnet run
    
  3. Accédez à https://localhost:5001 dans votre navigateur web.

  4. Dans la barre de navigation de la page web, sélectionnez Test Azure Cache pour Redis afin de tester l’accès au cache.

Capture d’écran du test simple effectué localement

Nettoyer les ressources

Si vous souhaitez continuer à utiliser les ressources que vous avez créées dans cet article, conservez le groupe de ressources.

Sinon, si vous avez terminé avec les ressources, vous pouvez supprimer le groupe de ressources Azure que vous avez créé pour éviter les frais.

Important

La suppression d’un groupe de ressources est irréversible. Quand vous supprimez un groupe de ressources, toutes les ressources qu’il contient sont supprimées définitivement. Veillez à ne pas supprimer accidentellement des ressources ou un groupe de ressources incorrects. Si vous avez créé les ressources dans un groupe de ressources existant contenant des ressources que vous souhaitez conserver, vous pouvez supprimer chaque ressource individuellement, au lieu de supprimer l’intégralité du groupe de ressources.

Pour supprimer un groupe de ressources

  1. Connectez-vous au Portail Azure, puis sélectionnez Groupes de ressources.

  2. Recherchez le groupe de ressources à supprimer.

    S’il existe de nombreux groupes de ressources, utilisez la zone Filtrer pour n’importe quel champ..., tapez le nom du groupe de ressources que vous avez créé pour cet article. Sélectionnez le groupe de ressources dans la liste des résultats.

    Capture d’écran montrant une liste de groupes de ressources à supprimer dans le volet de travail.

  3. Sélectionnez Supprimer le groupe de ressources.

  4. Vous êtes invité à confirmer la suppression du groupe de ressources. Saisissez le nom de votre groupe de ressources pour confirmer, puis sélectionnez Supprimer.

    Capture d’écran montrant un formulaire qui demande le nom de la ressource pour confirmer la suppression.

Après quelques instants, le groupe de ressources et toutes ses ressources sont supprimés.