Delen via


Quickstart: Azure Redis gebruiken met een ASP.NET-web-app

In deze snelstartgids gebruikt u Visual Studio 2019 om een ASP.NET-web-app die verbinding maakt met Azure Cache voor Redis om gegevens op te slaan en op te halen uit de cache. U kunt de app vervolgens in Azure App Service implementeren.

Ga naar de code op GitHub

Kloon de opslagplaats https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet op GitHub.

Vereiste voorwaarden

Een Azure Managed Redis-exemplaar maken

  1. Als u een Azure Managed Redis-exemplaar wilt maken, meldt u zich aan bij Azure Portal en selecteert u Een resource maken.

  2. Typ op de pagina Nieuw in het zoekvak Azure Cache voor Redis.

  3. Configureer op het tabblad Nieuwe Redis Cache de instellingen voor uw nieuwe cache bij Basisinstellingen.

    Configuratie Een waarde kiezen Beschrijving
    Abonnement Kies uit de vervolgkeuzelijst en selecteer uw abonnement. Het abonnement waaronder u dit nieuwe Azure Managed Redis-exemplaar wilt maken.
    Resourcegroep Klap het menu uit en selecteer een resourcegroep, of kies Nieuwe maken en geef een nieuwe resourcegroepnaam in. Naam voor de resourcegroep waarin de cache en andere resources moeten worden gemaakt. Door al uw app-resources in één resourcegroep te plaatsen, kunt u ze eenvoudig beheren of verwijderen.
    Naam Voer een naam in die uniek is in de regio. De cachenaam moet een tekenreeks tussen 1 en 63 tekens zijn in combinatie met de regionaam van de cache die alleen cijfers, letters of afbreekstreepjes bevat. (Als de cachenaam minder dan 45 tekens lang is, moet deze in alle momenteel beschikbare regio's werken.) De naam moet beginnen en eindigen met een getal of letter en mag geen opeenvolgende afbreekstreepjes bevatten. De hostnaam van uw cache-exemplaar is \<DNS name\>.\<Azure region\>.redis.azure.net.
    Regio Open de vervolgkeuzelijst en selecteer een locatie. Azure Managed Redis is beschikbaar in geselecteerde Azure-regio's.
    Gegevenslaag Selecteer in-memory voor hoge prestaties of Flash voor lagere prestatiecaches De lagen in het geheugen zijn evenwichtig, geoptimaliseerd voor geheugen en geoptimaliseerd voor rekenkracht. Gebruik de Flash-laag om gegevensopslag in het geheugen (RAM) en ssd(on-disk) te gebruiken.
    Cachegrootte Open de vervolgkeuzelijst en selecteer een grootte. De cachegrootte is afhankelijk van de laag. De kleinste grootte is een gebalanceerd niveau. De grootste in-memory laag is een Geheugen Geoptimaliseerde laag.
    prestatie Klap het menu uit en selecteer een prestatievoorkeur. De prestaties zijn afhankelijk van het aantal vCPU's. Het aantal vCPU's verschilt per laag. Compute Optimized heeft de meeste vCPU's.

    Zie De juiste laag kiezen voor hulp bij het kiezen van de juiste prestatielaag.

    Belangrijk

    Alle in-memory lagen die meer dan 120 GB aan opslagruimte gebruiken, zijn in publieke preview, inclusief Geheugen Geoptimaliseerde M150 en hoger; Gebalanceerde B150 en hoger; en Rekenkracht Geoptimaliseerde X150 en hoger. Al deze lagen en hoger bevinden zich in openbare preview.

    Alle voor Flash geoptimaliseerde lagen bevinden zich in openbare preview.

  4. Selecteer Volgende: Netwerken en selecteer een openbaar eindpunt of een privé-eindpunt.

  5. Selecteer Volgende: Actieve geo-replicatie. Als u actieve geo-replicatie wilt gebruiken, moet deze worden ingeschakeld tijdens het inrichten. Caches zonder actieve geo-replicatie kunnen later niet worden toegevoegd aan of deelnemen aan actieve geo-replicatiegroepen. Zie Actieve geo-replicatie configureren voor Azure Managed Redis-exemplaren voor meer informatie.

  6. Selecteer het tabblad Volgende: Geavanceerd .

    Configureer alle Redis-modules die u wilt toevoegen aan het exemplaar.

    Standaard voor een nieuwe beheerde cache:

    • Microsoft Entra-id is ingeschakeld.
    • Verificatie van toegangssleutels is uitgeschakeld om veiligheidsredenen.

    Belangrijk

    Voor optimale beveiliging wordt u aangeraden Microsoft Entra ID met beheerde identiteiten te gebruiken om aanvragen tegen uw cache te autoriseren, indien mogelijk. Autorisatie met behulp van Microsoft Entra ID en beheerde identiteiten biedt superieure beveiliging en gebruiksgemak ten opzichte van autorisatie van gedeelde toegangssleutels. Zie Microsoft Entra ID gebruiken voor cacheverificatievoor meer informatie over het gebruik van beheerde identiteiten met uw cache.

    Clusteringbeleid instellen:

    • Enterprise gebruiken om RedisSearch of andere modules te gebruiken
    • GEBRUIK OSS voor een geclusterde cache.
    • Gebruik niet-geclusterde (preview) voor een niet-geclusterde cache.

    Zie Clusterbeleid voor meer informatie over het kiezen van Clusterbeleid.

    Belangrijk

    U kunt het clusteringsbeleid van een Azure Managed Redis-exemplaar niet wijzigen nadat u het hebt gemaakt. Als u RediSearch gebruikt , is het clusterbeleid voor ondernemingen vereist en NoEviction wordt het enige verwijderingsbeleid ondersteund.

    Belangrijk

    Als u dit cache-exemplaar in een geo-replicatiegroep gebruikt, kan verwijderingsbeleid niet worden gewijzigd nadat het exemplaar is gemaakt. Zorg ervoor dat u het verwijderingsbeleid van uw primaire knooppunten kent voordat u de cache maakt. Zie Vereisten voor actieve geo-replicatie voor meer informatie over actieve geo-replicatie.

    Belangrijk

    U kunt modules niet wijzigen nadat u een cache-exemplaar hebt gemaakt. Modules moeten zijn ingeschakeld op het moment dat u een Azure Cache voor Redis exemplaar maakt. Er is geen optie om de configuratie van een module in te schakelen nadat u een cache hebt gemaakt.

  7. Selecteer Volgende: Tags en overslaan.

  8. Selecteer Volgende: Beoordelen en maken.

  9. Controleer de instellingen en selecteer Maken.

    Het duurt enkele minuten voordat het Redis-exemplaar is gemaakt. U kunt de voortgang controleren op de overzichtspagina van Azure Managed Redis. Wanneer Status als Wordt uitgevoerd verschijnt, is de cache klaar voor gebruik.

Een Azure Cache voor Redis-instantie maken

  1. Zoek en selecteer Azure Cache voor Redis in Azure Portal.

  2. Op de pagina Azure Cache voor Redis selecteer je Maken>Azure Cache voor Redis.

  3. Configureer op het tabblad Basis van de pagina Nieuwe Redis Cache de volgende instellingen:

    • Abonnement: selecteer het abonnement dat u wilt gebruiken.
    • Resourcegroep: Selecteer een resourcegroep of selecteer Nieuwe maken en voer een nieuwe resourcegroepnaam in. Door al uw app-resources in dezelfde resourcegroep te plaatsen, kunt u ze eenvoudig beheren of verwijderen.
    • Naam: Voer een cachenaam in die uniek is in de regio. De naam moet:
      • Wees een tekenreeks van 1 tot 63 tekens.
      • Alleen cijfers, letters en afbreekstreepjes bevatten.
      • Begin en eindig met een getal of letter.
      • Geen opeenvolgende afbreekstreepjes bevatten.
    • Regio: Selecteer een Azure-regio in de buurt van andere services die gebruikmaken van uw cache.
    • Cache-SKU: selecteer een SKU om de beschikbare grootten, prestaties en functies voor uw cache te bepalen.
    • Cachegrootte: Selecteer een cachegrootte. Zie het overzicht van Azure Cache voor Redis voor meer informatie.

    Schermopname van het tabblad Basisbeginselen van de pagina New Redis Cache.

  4. Selecteer het tabblad Netwerken of selecteer Volgende: Netwerken.

  5. Selecteer op het tabblad Netwerken een connectiviteitsmethode die u voor de cache wilt gebruiken. Privé-eindpunt wordt aanbevolen voor beveiliging. Als u Privé-eindpunt selecteert, selecteert u Privé-eindpunt toevoegen en maakt u het privé-eindpunt.

  6. Selecteer het tabblad Geavanceerd of selecteer Volgende: Geavanceerd.

  7. Configureer in het deelvenster Geavanceerd de volgende opties:

    • Selecteer Microsoft Entra-verificatie of verificatie met toegangssleutels. Microsoft Entra-verificatie is standaard ingeschakeld.
    • Kies of u de niet-TLS-poort wilt inschakelen .
    • Voor een Premium-cache kunt u beschikbaarheidszones configureren of uitschakelen. U kunt beschikbaarheidszones niet uitschakelen nadat de cache is gemaakt. Voor een Standard-cache worden beschikbaarheidszones automatisch toegewezen. Beschikbaarheidszones zijn niet beschikbaar voor de Basic-SKU.
    • Voor een Premium-cache configureert u de instellingen voor het aantal replica's, clustering en Shard count, door het systeem toegewezen beheerde identiteit en gegevenspersistentie.

    In de volgende afbeelding ziet u het tabblad Geavanceerd voor de Standard-SKU.

    Schermopname van het deelvenster Geavanceerd voor een Standaard-SKU-cache.

    Belangrijk

    Gebruik Microsoft Entra ID met beheerde identiteiten om aanvragen voor uw cache te autoriseren, indien mogelijk. Autorisatie met Behulp van Microsoft Entra ID en beheerde identiteit biedt betere beveiliging en is eenvoudiger te gebruiken dan autorisatie van gedeelde toegangssleutels. Zie Microsoft Entra ID gebruiken voor cacheverificatievoor meer informatie over het gebruik van beheerde identiteiten met uw cache.

  8. Selecteer eventueel het tabblad Tags of selecteer Volgende: Tags en voer tagnamen en waarden in om uw cachebronnen te categoriseren.

  9. Selecteer Beoordelen en maken en zodra de validatie is geslaagd, selecteert u Maken.

De implementatie van de nieuwe cache duurt enkele minuten. U kunt de voortgang van de implementatie controleren op de pagina Azure Cache voor Redis in de portal. Wanneer de cachestatusActief is, is de cache gereed voor gebruik.

Microsoft Entra ID-verificatie gebruiken in uw cache

Voor Azure Managed Redis-caches is Microsoft Entra-verificatie standaard ingeschakeld.

  1. Selecteer in Azure Portal de cache waar u verificatie op basis van Microsoft Entra-tokens wilt gebruiken.

  2. Selecteer Verificatie in het menu Resource.

  3. Selecteer Lid selecteren en voer de naam in van een geldige gebruiker. De gebruiker die u invoert, krijgt standaard automatisch de toegangspolicy voor gegevenseigenaar toegewezen wanneer u Opslaan selecteert. U kunt ook een beheerde identiteit of service-principal invoeren om verbinding te maken met uw cache-exemplaar.

    Schermopname van verificatie die is geselecteerd in het resourcemenu en de ingeschakelde Microsoft Entra-verificatie inschakelen.

Zie de referentiepagina's voor identiteit voor informatie over het gebruik van Microsoft Entra ID met Azure CLI.

De bibliotheek installeren voor het gebruik van Microsoft Entra ID-verificatie

De bibliotheek Azure.StackExchange.Redis bevat de Microsoft-verificatiemethode met behulp van Microsoft Entra ID voor het maken van verbinding met Azure Redis-services met behulp van Microsoft Entra ID. Deze is van toepassing op alle Azure Cache voor Redis, Azure Cache voor Redis Enterprise en Azure Managed Redis.

  1. Open uw project in Visual Studio

  2. Klik met de rechtermuisknop op het project, kies NuGet-pakketten beheren...

  3. Zoeken naar Microsoft.Azure.StackExchangeRedis

  4. Klik op De knop Installeren om te installeren

  5. Alle gevraagde inhoud accepteren om de installatie te voltooien

Verbinding maken met de cache met behulp van Microsoft Entra-id

  1. De bibliotheken in uw code opnemen

    using Azure.Identity;
    using StackExchange.Redis
    
  2. Gebruik de standaardReferenties van Azure om de clientverbinding te verifiëren. Hierdoor kan uw code de aanmeldingsgegevens van de aangemelde gebruiker gebruiken bij lokaal uitvoeren en een door Azure beheerde identiteit wanneer deze wordt uitgevoerd in Azure zonder codewijziging.

var configurationOptions = await ConfigurationOptions.Parse($"{_redisHostName}").ConfigureForAzureWithTokenCredentialAsync(new DefaultAzureCredential());
ConnectionMultiplexer _newConnection = await ConnectionMultiplexer.ConnectAsync(configurationOptions);
IDatabase Database = _newConnection.GetDatabase();

Het bestand web.config bewerken

  1. Bewerk het web.config-bestand door de volgende inhoud toe te voegen:

    <appSettings>
        <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/>
    </appSettings>
    
  2. Vervang door <cache-hostname> de hostnaam van uw cache, zoals deze wordt weergegeven in het menu Resource in Azure Portal.

    Bijvoorbeeld met Azure Managed Redis of de Enterprise-lagen: *my-redis.eastus.azure.net:10000_

  3. Sla het bestand op.

Zie StackExchange.Redis en de code in een GitHub-opslagplaats voor meer informatie.

Het bestand web.config bewerken

  1. Bewerk het web.config-bestand door de volgende inhoud toe te voegen:

    <appSettings>
        <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/>
    </appSettings>
    
  2. Vervang door <cache-hostname> de hostnaam van uw cache, zoals deze wordt weergegeven in het menu Resource in Azure Portal.

    Bijvoorbeeld met Azure Cache voor Redis my-redis.eastus.azure.net:6380

  3. Sla het bestand op.

Zie StackExchange.Redis en de code in een GitHub-opslagplaats voor meer informatie.

De app lokaal uitvoeren

Het project is standaard geconfigureerd voor het lokaal hosten van de app in IIS Express voor testen en foutopsporing.

De app lokaal uitvoeren

  1. Selecteer in Visual Studio Debug>Start Debugging om de app lokaal te bouwen en te starten voor testen en foutopsporing.

  2. Selecteer in de browser Azure Cache voor Redis Test op de navigatiebalk.

  3. In het volgende voorbeeld ziet u dat de Message-sleutel eerder een waarde in de cache had, die was ingesteld met behulp van de Azure Cache voor Redis-console in de portal. De app heeft die waarde in de cache bijgewerkt. De app heeft ook de opdrachten PING en CLIENT LIST uitgevoerd.

    Schermopname van een eenvoudige test die lokaal is voltooid.

Publiceren en uitvoeren in Azure

Nadat het lokaal testen van de app is geslaagd, implementeert u de app in Azure en voert u deze uit in de cloud.

De app publiceren in Azure

  1. Klik in Visual Studio met de rechtermuisknop op het projectknooppunt in Solution Explorer. Selecteer vervolgens Publiceren.

    Schermopname van de knop Publiceren.

  2. Selecteer Microsoft Azure App Service, selecteer Nieuwe maken en selecteer vervolgens Publiceren.

    Schermopname van het publiceren naar App Service.

  3. Breng in het dialoogvensterApp Service maken de volgende wijzigingen aan:

    Configuratie Aanbevolen waarde Beschrijving
    App-naam Gebruik de standaard. De naam van de app is de hostnaam voor de app wanneer deze wordt geïmplementeerd in Azure. Aan de naam is mogelijk een tijdstempel als achtervoegsel toegevoegd om deze uniek te maken, indien nodig.
    Abonnement Kies uw Azure-abonnement. Voor dit abonnement worden eventuele gerelateerde hostingkosten in rekening gebracht. Als u meerdere Azure-abonnementen hebt, controleert u of het gewenste abonnement is geselecteerd.
    Resourcegroep Gebruik dezelfde resourcegroep waar u de cache hebt gemaakt. (Bijvoorbeeld, TestResourceGroup.) Met een resourcegroep kunt u alle resources als een groep beheren. Als u de app later wilt verwijderen, verwijdert u gewoon de groep.
    App Service-plan Selecteer Nieuw en maak vervolgens een nieuw App Service-plan met de naam TestingPlan.
    Gebruik dezelfde locatie die u hebt gebruikt bij het maken van uw cache.
    Kies Vrij voor de grootte.
    Een App Service-plan definieert een set van rekenresources waarmee een web-app wordt uitgevoerd.

    Schermopname van het dialoogvenster App Service.

  4. Nadat u de instellingen voor App Service-hosting hebt geconfigureerd, selecteert u Maken.

  5. Controleer het venster Uitvoer in Visual Studio om de publicatiestatus te zien. Nadat de app is gepubliceerd, wordt de URL voor de app geregistreerd:

    Schermopname van publicatiegegevens in het uitvoervenster.

De app-instelling voor de cache toevoegen

Nadat de nieuwe app is gepubliceerd, voegt u een nieuwe app-instelling toe. Deze instelling wordt gebruikt om de verbindingsgegevens van de cache op te slaan.

De app-instelling toevoegen

  1. Als u de nieuwe app wilt zoeken die u hebt gemaakt, typt u de naam van de app in de zoekbalk boven aan Azure Portal.

    Schermopname die laat zien hoe u de app kunt vinden in Azure Portal.

  2. Voeg een nieuwe app instelling met de naam CacheConnection toe die de app kan gebruiken om verbinding te maken met de cache. Gebruik dezelfde waarde die u hebt geconfigureerd in RedisHostName uw web.config-bestand .

De app in Azure uitvoeren

  1. Ga in de browser naar de URL voor de app. De URL wordt weergegeven in de resultaten van de publicatiebewerking in het uitvoervenster van Visual Studio. De URL wordt ook opgegeven in Azure Portal op de overzichtspagina van de app die u hebt gemaakt.

  2. Selecteer Azure Cache voor Redis Testen op de navigatiebalk om de toegang tot de cache te testen zoals u dat hebt gedaan met de lokale versie.

De hulpbronnen opschonen

Als u de resources wilt blijven gebruiken die u in dit artikel hebt gemaakt, moet u de resourcegroep behouden.

Als u klaar bent met de resources, kunt u de Azure-resourcegroep verwijderen die u hebt gemaakt om kosten te voorkomen.

Belangrijk

Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. Wanneer u een resourcegroep verwijdert, worden alle resources in de groep definitief verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde bron of bronngroep verwijdert. Als u de resources in een bestaande resourcegroep hebt gemaakt die resources bevat die u wilt behouden, kunt u elke resource afzonderlijk verwijderen in plaats van de resourcegroep te verwijderen.

Een resourcegroep verwijderen

  1. Meld u aan bij Azure Portal en selecteer vervolgens Resourcegroepen.

  2. Selecteer de resourcegroep die u wilt verwijderen.

    Als er veel resourcegroepen zijn, gebruikt u het vak Filter voor een veld... en typt u de naam van de resourcegroep die u voor dit artikel hebt gemaakt. Selecteer de bronnen groep in de lijst met resultaten.

    Schermopname van een lijst met resourcegroepen die u wilt verwijderen in het werkvenster.

  3. Selecteer Resourcegroep verwijderen.

  4. U wordt gevraagd om het verwijderen van de resourcegroep te bevestigen. Typ ter bevestiging de naam van de resourcegroep. Selecteer vervolgens Verwijderen.

    Schermopname van een formulier waarvoor de resourcenaam is vereist om het verwijderen te bevestigen.

Na enkele ogenblikken worden de resourcegroep en alle bijbehorende resources verwijderd.