Guia de início rápido: Usar o Cache do Azure para Redis com um aplicativo Web ASP.NET Core

Neste guia de início rápido, você vai incorporar o Cache do Azure para Redis em um aplicativo Web ASP.NET Core que se conecta ao Cache do Azure para Redis para armazenar e recuperar dados de cache.

Pular para o código no GitHub

Clone o repositório https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet-core no GitHub.

Pré-requisitos

Criar um cache

  1. Para criar um cache, entre no portal do Azure e selecione Criar um recurso.

    Criar um recurso está realçado no painel de navegação esquerdo.

  2. Na página Novo, selecione Bancos de dados e, em seguida, Cache do Azure para Redis.

    Em Novo, os Bancos de Dados e o Cache do Azure para Redis estão realçados.

  3. Na página Novo Cache Redis, defina as configurações para o novo cache.

    Configuração Escolher um valor Descrição
    Assinatura Clique na lista suspensa e selecione sua assinatura. A assinatura na qual essa nova instância do Cache do Azure para Redis será criada.
    Grupo de recursos Clique na lista suspensa e selecione um grupo de recursos ou selecione Criar e insira um novo nome de grupo de recursos. Nome do grupo de recursos no qual o cache e outros recursos serão criados. Ao colocar todos os seus recursos de aplicativos em um só grupo de recursos, você pode gerenciá-los ou excluí-los juntos com facilidade.
    Nome DNS Insira um nome exclusivo. O nome do cache deve conter de 1 a 63 caracteres e incluir somente números, letras ou hifens. O nome precisa começar e terminar com um número ou uma letra e não pode conter hifens consecutivos. O nome do host da instância de cache será <nome DNS>.redis.cache.windows.net.
    Localidade Clique na lista suspensa e selecione uma localização. Selecione uma região perto de outros serviços que usam o seu cache.
    Tipo de cache Clique na lista suspensa e selecione uma camada. A camada determina o tamanho, o desempenho e os recursos disponíveis para o cache. Para obter mais informações, confira Visão geral do Cache do Azure para Redis.
  4. Selecione a guia Rede ou o botão Rede na parte inferior da página.

  5. Na guia Rede, escolha o método de conectividade.

  6. Selecione a guia Próximo: Avançado ou o botão Próximo: Avançado na parte inferior da página para ver a guia Avançado.

    Captura de tela mostrando a guia Avançado no painel de trabalho e a opção disponível para seleção.

    • Para caches Básico ou Standard, alterne a seleção para uma porta não TLS. Você também pode selecionar se deseja habilitar a Autenticação do Microsoft Entra.
    • Para um cache Premium, defina as configurações para porta não TLS, clustering, identidade gerenciada e persistência de dados. Você também pode selecionar se deseja habilitar a Autenticação do Microsoft Entra.
  7. Selecione a guia Próximo: Marcas ou o botão Próximo: Marcas na parte inferior da página.

  8. Opcionalmente, na guia Marcas, insira o nome e o valor caso deseje categorizar o recurso.

  9. Selecione Examinar + criar. Você será levado para a guia Examinar + criar, na qual o Azure valida sua configuração.

  10. Depois que a mensagem em verde Validação aprovada for exibida, selecione Criar.

A criação do cache demora um pouco. Monitore o progresso na página Visão Geral do Cache do Azure para Redis. Quando o Status for mostrado como Em execução, o cache estará pronto para uso.

Recuperar o nome de host, as portas e as chaves de acesso do portal do Azure

Para conectar seu servidor do Cache do Azure para Redis, o cliente de cache precisa do nome do host, das portas e de uma chave para o cache. Alguns clientes podem se referir a esses itens por nomes um pouco diferentes. Você pode obter o nome do host, as portas e as chaves do portal do Azure.

  • Para obter as chaves de acesso, selecione Autenticação no menu Recurso. Em seguida, selecione a guia Chaves de Acesso.

    Chaves do Cache Redis do Azure

  • Para obter o nome do host e as portas do cache, selecione Visão geral no menu Recurso. O nome do host está no formato <nome DNS>.redis.cache.windows.net.

    Propriedades do Cache Redis do Azure

Anote o NOME DE HOST e a chave de acesso primária. Você usará esses valores posteriormente para construir o segredo do CacheConnection.

Adicionar um segredo local para a cadeia de conexão

Na janela Comando, execute o seguinte comando para armazenar um novo segredo denominado CacheConnection, depois de substituir os espaços reservados, incluindo colchetes, para o nome do cache e a chave de acesso primária:

dotnet user-secrets set CacheConnection "<cache name>.redis.cache.windows.net,abortConnect=false,ssl=true,allowAdmin=true,password=<primary-access-key>"

Conexão ao cache com RedisConnection

A classe RedisConnection gerencia a conexão com o cache. A conexão é feita nesta instrução em HomeController.cs na pasta Controladores:

_redisConnection = await _redisConnectionFactory;

Em RedisConnection.cs, você vê que o namespace StackExchange.Redis é adicionado ao código. Isto é necessário para a classe RedisConnection.

using StackExchange.Redis;

O código RedisConnection garante que sempre haja uma conexão íntegra com o cache gerenciando a instância ConnectionMultiplexer de StackExchange.Redis. A classe RedisConnection recria a conexão quando uma conexão é perdida e não consegue se reconectar automaticamente.

Para obter mais informações, confira StackExchange.Redis e o código em um repositório GitHub.

Exibições de layout no exemplo

O layout da página inicial deste exemplo é armazenado no arquivo _Layout.cshtml. Nesta página, você inicia o teste de cache real clicando em Testar Cache do Azure para Redis.

  1. Abra Views\Shared\_Layout.cshtml.

  2. Você deverá ver em <div class="navbar-header">:

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

captura de tela da página inicial

Mostrando dados do cache

Na página inicial, selecione Testar Cache do Azure para Redis para ver a saída de exemplo.

  1. No Gerenciador de Soluções, expanda a pasta Exibições e, em seguida, clique com o botão direito do mouse na pasta Início.

  2. Você deve ver esse código no arquivo 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>
    

Executar o aplicativo localmente

  1. Execute o seguinte comando na janela de comando para compilar o aplicativo:

    dotnet build
    
  2. Em seguida, execute o aplicativo com o seguinte comando:

    dotnet run
    
  3. Navegue até https://localhost:5001 em seu navegador da Web.

  4. Selecione Teste do Cache do Azure para Redis na barra de navegação da página da Web para testar o acesso ao cache.

Captura de tela do local do teste simples concluído

Limpar os recursos

Se quiser continuar a usar os recursos que você criou neste artigo, conserve o grupo de recursos.

Caso contrário, se não pretende mais usar os recursos, você poderá excluir o grupo de recursos criado no Azure para evitar a cobrança.

Importante

A exclusão de um grupo de recursos é irreversível. Ao excluir o grupo de recursos, todos os recursos nele são excluídos permanentemente. Não exclua acidentalmente o grupo de recursos ou os recursos incorretos. Se você criou os recursos dentro de um grupo de recursos existente que contém recursos que você quer manter, você pode excluir cada recurso individualmente em vez de excluir o grupo de recursos.

Para excluir um grupo de recursos

  1. Entre no portal do Azure e selecione Grupos de recursos.

  2. Selecione o grupo de recursos que você quer excluir.

    Se existirem muitos grupos de recursos, use a caixa Filtrar para qualquer campo... e digite o nome do seu grupo de recursos que você criou para este artigo. Selecione o grupo de recursos na lista de resultados.

    Captura de tela mostrando uma lista dos grupos de recursos a serem excluídos no painel de trabalho.

  3. Selecione Excluir grupo de recursos.

  4. Você receberá uma solicitação para confirmar a exclusão do grupo de recursos. Digite o nome do grupo de recursos para confirmar e selecione Excluir.

    Captura de tela mostrando um formulário que requer que a exclusão do nome do recurso seja confirmada.

Após alguns instantes, o grupo de recursos, e todos os recursos nele são excluídos.