Início Rápido: Usar o Cache do Azure para Redis com o aplicativo Java

Nesse início rápido, você incorporará o Cache do Azure para Redis no aplicativo Java usando o cliente Jedis do Redis. Seu aplicativo se conectará a um cache seguro e dedicado que poderá ser acessado de qualquer aplicativo no Azure.

Ir para o código

Esse início rápido usa o recurso de arquétipo do Maven para gerar o scaffolding para o aplicativo Java. O início rápido descreve como configurar o código para criar um aplicativo funcional que se conectará ao Cache do Azure para Redis.

Se quiser ir diretamente para o código, confira o Exemplo de início rápido do Java no GitHub.

Pré-requisitos

Criar um cache

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

    Captura de tela mostrando a opção Criar um recurso realçada no painel de navegação à esquerda no portal do Azure.

  2. No painel Introdução, insira Cache do Azure para Redis na barra de pesquisa. Nos resultados da pesquisa, encontre Cache do Azure para Redis e, em seguida, selecione Criar.

    Captura de tela mostrando o Azure Marketplace com o Cache do Azure para Redis na caixa de pesquisa, e o botão Criar realçado.

  3. No painel Novo Cache Redis, na guia Básico, defina as seguintes configurações para o seu cache:

    Configuração Ação Descrição
    Assinatura Selecione sua assinatura do Azure. A assinatura a ser usada para criar a instância do Cache do Azure para Redis.
    Grupo de recursos Selecione um grupo de recursos ou selecione Criar novo e insira um novo nome de grupo de recursos. Um nome para o grupo de recursos no qual criar seu cache e outros recursos. 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 ser uma cadeia de caracteres de 1 a 63 caracteres que contenha apenas números, letras e hifens. O nome deve 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 é \<DNS name>.redis.cache.windows.net.
    Localidade Selecione uma localização. Uma região do Azure próxima de outros serviços que utilizem o seu cache.
    Cache SKU Selecione um SKU. O SKU determina o tamanho, desempenho e parâmetros de recursos disponíveis para o cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
    Tamanho do cache Selecione um tamanho de cache. Para obter mais informações, consulte Visão geral do Cache do Azure para Redis.
  4. Selecione a guia Rede ou selecione Avançar: Rede.

  5. Na guia Rede, selecione um método de conectividade a ser usado para o cache.

  6. Selecione a guia Avançado ou selecione Avançar: Avançado.

  7. No painel Avançado, verifique ou selecione um método de autenticação com base nas informações a seguir:

    Captura de tela mostrando o painel Avançado e as opções disponíveis para seleção.

    • Por padrão, para um novo cache Básico, Standard ou Premium, a Autenticação do Microsoft Entra está habilitada e a Autenticação de Chaves de Acesso está desabilitada.
    • Para caches Básico ou Standard, é possível escolher a seleção de uma porta não TLS.
    • Para caches Standard e Premium, é possível optar por habilitar zonas de disponibilidade. Não é possível desabilitar zonas de disponibilidade após a criação do cache.
    • Para um cache Premium, defina as configurações para porta não TLS, clustering, identidade gerenciada e persistência de dados.

    Importante

    Para obter a segurança ideal, recomendamos que você use o Microsoft Entra ID com identidades gerenciadas para autorizar solicitações no seu cache, se possível. A autorização usando o Microsoft Entra ID e identidades gerenciadas oferece maior segurança e facilidade de uso em comparação com a autorização por chave de acesso compartilhada. Para mais informações sobre como usar identidades gerenciadas com seu cache, confira Usar o Microsoft Entra ID para autenticação de cache.

  8. (Opcional) Selecione a guia Marcas ou selecione Avançar: Marcas.

  9. (Opcional) Na guia Marcas, insira um nome e valor da marca caso queira categorizar seu recurso de cache.

  10. Selecione o botão Revisar + criar.

    Na guia Examinar + criar, o Azure valida automaticamente sua configuração.

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

Uma nova implantação de cache ocorre ao longo de vários minutos. Você pode monitorar o progresso da implantação no painel Visão Geral do Cache do Azure para Redis. Quando o Status exibir Em Execução, o cache estará pronto para uso.

Obter o nome do host, as portas e a chave de acesso

Para se conectar ao servidor do Cache do Azure para Redis, o cliente de cache precisa do nome do host, das portas e da chave de acesso do cache. Alguns clientes podem se referir a esses itens usando nomes ligeiramente diferentes. Você pode obter o nome do host, as portas e as chaves no portal do Azure.

  • Para obter uma chave de acesso para seu cache:

    1. No portal do Azure, acesse seu cache.
    2. No menu de serviço, em Configurações, selecione Autenticação.
    3. No painel Autenticação, selecione a guia Chaves de acesso.
    4. Para copiar o valor de uma chave de acesso, selecione o ícone Copiar no campo de chave.

    Captura de tela mostrando como encontrar e copiar uma chave de acesso para uma instância do Cache do Azure para Redis.

  • Para obter o nome do host e as portas do cache:

    1. No portal do Azure, acesse seu cache.
    2. No menu de serviço, selecione Visão Geral.
    3. Em Essentials, para o Nome do host, selecione o ícone Copiar para copiar o valor do nome do host. O valor do nome do host tem o formato <DNS name>.redis.cache.windows.net.
    4. Para Portas, selecione o ícone Copiar para copiar os valores da porta.

    Captura de tela que mostra como encontrar e copiar o nome do host e as portas de uma instância do Cache do Azure para Redis.

Configurar o ambiente de trabalho

Dependendo do seu sistema operacional, adicione variáveis de ambiente para o nome do host e a chave de acesso primária que você observou anteriormente. Em uma janela do prompt de comando ou na janela do terminal, defina os seguintes valores:

export REDISCACHEHOSTNAME=<your-host-name>.redis.cache.windows.net
export REDISCACHEKEY=<your-primary-access-key>

Substitua os espaços reservados pelos seguintes valores:

  • <your-host-name>: o nome do host DNS, obtido na seção Propriedades do seu recurso do Cache do Azure para Redis no portal do Azure.
  • <your-primary-access-key>: a chave de acesso primária, obtida na seção Chaves de acesso do seu recurso do Cache do Azure para Redis no portal do Azure.

Examinar o exemplo Java

Neste exemplo, você usa o Maven para executar o aplicativo de início rápido.

  1. Vá para o novo diretório do projeto redistest.

  2. Abra o arquivo pom.xml. No arquivo, verifique se uma dependência para Jedis é exibida:

    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>4.1.0</version>
      <type>jar</type>
      <scope>compile</scope>
    </dependency>
    
  3. Feche o arquivo pom.xml.

  4. Abra App.java e verifique se o código a seguir é exibido:

    package example.demo;
    
    import redis.clients.jedis.DefaultJedisClientConfig;
    import redis.clients.jedis.Jedis;
    
    /**
     * Redis test
     *
     */
    public class App 
    {
        public static void main( String[] args )
        {
    
            boolean useSsl = true;
            String cacheHostname = System.getenv("REDISCACHEHOSTNAME");
            String cachekey = System.getenv("REDISCACHEKEY");
    
            // Connect to the Azure Cache for Redis over the TLS/SSL port using the key.
            Jedis jedis = new Jedis(cacheHostname, 6380, DefaultJedisClientConfig.builder()
                .password(cachekey)
                .ssl(useSsl)
                .build());
    
            // Perform cache operations by using the cache connection object. 
    
            // Simple PING command
            System.out.println( "\nCache Command  : Ping" );
            System.out.println( "Cache Response : " + jedis.ping());
    
            // Simple get and put of integral data types into the cache
            System.out.println( "\nCache Command  : GET Message" );
            System.out.println( "Cache Response : " + jedis.get("Message"));
    
            System.out.println( "\nCache Command  : SET Message" );
            System.out.println( "Cache Response : " + jedis.set("Message", "Hello! The cache is working from Java!"));
    
            // Demonstrate "SET Message" executed as expected...
            System.out.println( "\nCache Command  : GET Message" );
            System.out.println( "Cache Response : " + jedis.get("Message"));
    
            // Get the client list, useful to see if connection list is growing...
            System.out.println( "\nCache Command  : CLIENT LIST" );
            System.out.println( "Cache Response : " + jedis.clientList());
    
            jedis.close();
        }
    }
    

    Esse código mostra como se conectar a uma instância do Cache do Azure para Redis usando o nome do host de cache e as principais variáveis de ambiente. O código também armazena e recupera um valor de cadeia de caracteres no cache. Os comandos PING e CLIENT LIST também são executados.

  5. Feche App.java.

Compilar e executar o aplicativo

  1. Defina as variáveis de ambiente, conforme observado anteriormente:

    export REDISCACHEHOSTNAME=<your-host-name>.redis.cache.windows.net
    export REDISCACHEKEY=<your-primary-access-key>
    
  2. Para compilar e executar o aplicativo, execute o seguinte comando Maven:

    mvn compile
    mvn exec:java -D exec.mainClass=example.demo.App
    

Na saída a seguir, você pode ver que a chave Message tinha previamente um valor em cache. O valor foi atualizado para um novo valor usando jedis.set. O aplicativo também executou os comandos PING e CLIENT LIST.

Cache Command  : Ping
Cache Response : PONG

Cache Command  : GET Message
Cache Response : Hello! The cache is working from Java!

Cache Command  : SET Message
Cache Response : OK

Cache Command  : GET Message
Cache Response : Hello! The cache is working from Java!

Cache Command  : CLIENT LIST
Cache Response : id=777430 addr=             :58989 fd=22 name= age=1 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 ow=0 owmem=0 events=r cmd=client numops=6

Limpar os recursos

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

Caso contrário, para evitar encargos relacionados aos recursos, se você já tiver terminado de usá-los, poderá excluir o grupo de recursos do Azure que você criou.

Aviso

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

Excluir um grupo de recursos

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

  2. Selecione o grupo de recursos a ser excluído.

    Se houver muitos grupos de recursos, em Filtrar para qualquer campo, insira o nome do grupo de recursos que você criou para concluir esse artigo. Na lista de resultados da pesquisa, selecione o grupo de recursos.

    Captura de tela mostrando uma lista de grupos de recursos para escolher e excluir.

  3. Selecione Excluir grupo de recursos.

  4. No painel Excluir um grupo de recursos, insira o nome do grupo de recursos para confirmar e selecione Excluir.

    Captura de tela mostrando uma caixa que requer a inserção do nome do recurso para confirmar a exclusão.

Em alguns instantes, o grupo de recursos e todos os seus recursos serão excluídos.