Partilhar via


Início Rápido: Utilizar a Cache do Azure para Redis com uma aplicação Web ASP.NET Core

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

Há também provedores de cache no núcleo .NET. Para começar rapidamente a usar o Redis com alterações mínimas no código existente, consulte:

Saltar para o código no GitHub

Clone o https://github.com/Azure-Samples/azure-cache-redis-samples repositório GitHub e navegue até o quickstart/aspnet-core diretório para visualizar o código-fonte concluído para as etapas à frente.

O quickstart/aspnet-core diretório também é configurado como um modelo de CLI (azd) do Desenvolvedor do Azure. Use a ferramenta de código azd aberto para simplificar o provisionamento e a implantação de um ambiente local para o Azure. Opcionalmente, execute o azd up comando para provisionar automaticamente uma instância do Cache Redis do Azure e configurar o aplicativo de exemplo local para se conectar a ele:

azd up

Explore o exemplo da eShop

Como próxima etapa, você pode ver um aplicativo eShop de cenário real demonstrando os ASP.NET principais provedores de cache: ASP.NET eShop principal usando provedores de cache Redis.

Características incluídas:

  • Cache distribuído Redis
  • Provedor de estado de sessão Redis

As instruções de implantação estão no README.md.

Pré-requisitos

Criar uma cache

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

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

  2. Na página Introdução, digite Cache Redis do Azure na caixa de pesquisa. Em seguida, selecione Criar.

    A captura de ecrã do Azure Marketplace com o Cache Redis do Azure na caixa de pesquisa e criar está realçada com uma caixa vermelha.

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

    Definição Escolher um valor Description
    Subscrição Drop-down e selecione sua assinatura. A assinatura sob a qual criar essa nova instância do Cache do Azure para Redis.
    Grupo de recursos Drop-down e selecione um grupo de recursos, ou selecione Criar novo e insira um novo nome de grupo de recursos. Nome do grupo de recursos no qual criar o cache e outros recursos. Ao colocar todos os recursos do seu aplicativo em um grupo de recursos, você pode facilmente gerenciá-los ou excluí-los juntos.
    Nome DNS Introduza um nome exclusivo. O nome do cache deve ser uma cadeia de caracteres entre 1 e 63 caracteres que contenha apenas números, letras ou hífenes. O nome deve começar e terminar com um número ou letra e não pode conter hífenes consecutivos. O nome de host da instância de cache é <DNS name.redis.cache.windows.net>.
    Location Drop-down e selecione um local. Selecione uma região perto de outros serviços que usam seu cache.
    Cache SKU Drop-down e selecione um SKU. A SKU determina os parâmetros de tamanho, desempenho e recursos disponíveis para o cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
    Tamanho do cache Drop-down e selecione um tamanho do seu cache Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
  4. Selecione a guia Rede ou selecione o botão Rede na parte inferior da página.

  5. Na guia Rede, selecione seu método de conectividade.

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

    Captura de ecrã a mostrar o separador Avançadas no painel de trabalho e a opção disponível para selecionar.

  7. Marque a caixa para habilitar a Autenticação do Microsoft Entra.

    Importante

    Para uma segurança ideal, a Microsoft recomenda o uso do Microsoft Entra ID com identidades gerenciadas para autorizar solicitações em seu cache sempre que possível. A autorização com ID do Microsoft Entra e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave compartilhada. Para obter mais informações sobre como usar identidades gerenciadas com seus caches, consulte Usar a ID do Microsoft Entra para autenticação de cache.

  8. Selecione a guia Next: Tags ou selecione o botão Next: Tags na parte inferior da página.

  9. Opcionalmente, na guia Marcas , insira o nome e o valor se desejar categorizar o recurso.

  10. Selecione Rever + criar. Você é levado para a guia Revisão + criação, onde o Azure valida sua configuração.

  11. Depois que a mensagem verde Validação passada for exibida, selecione Criar.

Demora um pouco para um cache ser criado. Você pode monitorar o progresso na página Visão geral do Cache do Azure para Redis. Quando Status é exibido como Em execução, o cache está pronto para uso.

Recuperar o nome do host do portal do Azure

O cliente de cache precisa do nome do host e da porta para que o cache se conecte ao seu servidor Cache do Azure para Redis. Alguns clientes podem mencionar esses itens com nomes ligeiramente diferentes. Você pode obter o nome do host e as portas no portal do Azure.

  • Selecione Visão geral no menu Recurso. O nome do host é do formato <DNS-name>.redis.cache.windows.net.

    Captura de tela mostrando as propriedades do Cache Redis do Azure com uma caixa vermelha ao redor do nome do host.

Adicionar a política de acesso Redis

Você precisa atribuir uma política de acesso a dados à identidade que acessa o Cache do Azure para Redis. Neste exemplo, você atribui uma política de acesso a dados à mesma conta de ID do Microsoft Entra usada para fazer logon na CLI do Azure ou no Visual Studio.

  1. Selecione o menu Configurações de recurso no cache e selecione a Configuração de acesso a dados.

  2. Na página Configuração de Acesso a Dados, selecione Adicionar > Novo Usuário Redis na navegação superior.

    Captura de tela mostrando a tela de configuração de acesso a dados.

  3. Na página Novo Usuário Redis, selecione a política de Colaborador de Dados e selecione Avançar: Usuários Redis.

  4. Escolha + Selecionar Membro para abrir o menu suspenso. Pesquise a sua conta de utilizador e selecione-a a partir dos resultados.

    Captura de tela mostrando a guia Usuário Redis no painel de trabalho com o membro selecionado realçado com uma caixa vermelha.

  5. Selecione Rever + atribuir para atribuir a política ao utilizador selecionado.

Adicionar um segredo local para o nome do host

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

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

Conectar-se ao cache com RedisConnection

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

_redisConnection = await _redisConnectionFactory;

A RedisConnection.cs classe inclui os StackExchange.Redis namespaces e Azure.Identity na parte superior do arquivo para incluir tipos essenciais para se conectar ao Cache do Azure para Redis.

using StackExchange.Redis;
using Azure.Identity;

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

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

Modos de exibição de layout no exemplo

O layout da home page para este exemplo é armazenado no arquivo _Layout.cshtml . Nesta página, você inicia o teste de cache real clicando no Teste de Cache Redis do Azure nesta página.

  1. Abra Views\Shared\_Layout.cshtml.

  2. Você deve 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 ecrã da página de boas-vindas

Mostrando dados do cache

Na home page, selecione Cache do Azure para Teste Redis para ver a saída de exemplo.

  1. No Explorador de Soluções, expanda a pasta Vistas e, em seguida, clique com o botão direito do rato na pasta Raiz.

  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 a aplicação localmente

  1. Execute o seguinte comando na janela de comandos para criar a aplicação:

    dotnet build
    
  2. Em seguida, execute a aplicação com o comando seguinte:

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

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

Captura de tela do teste simples concluído localmente

Clean up resources (Limpar recursos)

Se quiser continuar a usar os recursos criados neste artigo, mantenha o grupo de recursos.

Caso contrário, se tiver terminado os recursos, pode eliminar o grupo de recursos do Azure que criou para evitar cobranças.

Importante

A eliminação de um grupo de recursos é irreversível. Quando elimina um grupo de recursos, todos os recursos nele contidos são eliminados permanentemente. Confirme que não elimina acidentalmente o grupo de recursos ou recursos errados. Se você criou os recursos dentro de um grupo de recursos existente que contém recursos que deseja manter, poderá excluir cada recurso individualmente em vez de excluir o grupo de recursos.

Para eliminar um grupo de recursos

  1. Inicie sessão no Portal do Azure e selecione Grupos de recursos.

  2. Selecione o grupo de recursos que pretende eliminar.

    Se houver muitos grupos de recursos, use a caixa Filtrar para qualquer campo... , digite o nome do grupo de recursos criado para este artigo. Selecione o grupo de recursos na lista de resultados.

    Captura de ecrã a mostrar uma lista de grupos de recursos a eliminar no painel de trabalho.

  3. Selecione Eliminar grupo de recursos.

  4. É-lhe pedido que confirme a eliminação do grupo de recursos. Escreva o nome do grupo de recursos para confirmar e, em seguida, selecione Eliminar.

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

Após alguns instantes, o grupo de recursos e todos os respetivos recursos são eliminados.