Inicio rápido: Uso de Azure Cache for Redis con Java

En este inicio rápido, se incorpora Azure Redis Cache a una aplicación Java mediante el cliente de Redis Jedis. La caché es una caché segura y dedicada a la que se puede acceder desde cualquier aplicación de Azure.

Ir al código en GitHub

Clone el inicio rápido de Java del repositorio en GitHub.

Requisitos previos

Creación de una instancia de Azure Redis Cache

  1. Para crear una instancia de caché, inicie sesión en Azure Portal y seleccione Crear un recurso.

    Crear un recurso está resaltado en el panel de navegación izquierdo.

  2. En la página Nuevo, seleccione Base de datos y, a continuación, seleccione Azure Cache for Redis.

    En Nuevo, están resaltados Bases de datos y Azure Cache for Redis.

  3. En la página Nueva instancia de Redis Cache, configure las opciones de la nueva caché.

    Configuración Elegir un valor Descripción
    Suscripción Desplácese hacia abajo y seleccione su suscripción. La suscripción en la que se creará esta nueva instancia de Azure Cache for Redis.
    Grupos de recursos Desplácese hacia abajo y seleccione un grupo de recursos o Crear nuevo y escriba un nombre nuevo para el grupo de recursos. Nombre del grupo de recursos en el que se van a crear la caché y otros recursos. Al colocar todos los recursos de la aplicación en un grupo de recursos, puede administrarlos o eliminarlos fácilmente.
    Nombre DNS Escriba un nombre único. El nombre de la memoria caché debe ser una cadena de entre 1 y 63 caracteres, y solo puede contener números, letras o guiones. El nombre debe comenzar y terminar por un número o una letra y no puede contener guiones consecutivos. El nombre de host de la instancia de caché es <DNS name>.redis.cache.windows.net.
    Ubicación Desplácese hacia abajo y seleccione una ubicación. Selecciona una región cerca de otros servicios que usan la memoria caché.
    Tipo de caché Desplácese hacia abajo y seleccione un nivel. El nivel determina el tamaño, rendimiento y características disponibles para la memoria caché. Para más información, consulte la introducción a Azure Redis Cache.
  4. Seleccione la pestaña Redes o elija el botón Redes situado en la parte inferior de la página.

  5. En la pestaña Redes, seleccione el método de conectividad.

  6. Seleccione la pestaña Siguiente: Avanzadas o el botón Siguiente: Avanzadas en la parte inferior de la página para ver la pestaña Avanzadas.

    Captura de pantalla que muestra la pestaña Opciones avanzadas en el panel de trabajo y la opción que se puede seleccionar.

    • En cachés básicas o estándar, cambie la selección a un puerto que no sea TLS. También puede seleccionar si desea habilitar la Autenticación de Microsoft Entra.
    • En el caso de una caché Premium, configure las opciones para un puerto que no sea TLS, la agrupación en clústeres, la identidad administrada y la persistencia de datos. También puede seleccionar si desea habilitar la Autenticación de Microsoft Entra.
  7. Seleccione el botón Siguiente: Opciones avanzadas o elija el botón Siguiente: Etiquetas situado en la parte inferior de la página.

  8. Opcionalmente, en la pestaña Etiquetas, escriba el nombre y el valor si desea clasificar el recurso.

  9. Seleccione Revisar + crear. Pasará a la pestaña Revisar y crear, donde Azure valida la configuración.

  10. Tras aparecer el mensaje verde Validación superada, seleccione Crear.

Se tarda un tiempo en crear una memoria caché. Puede supervisar el progreso en la página Información general de Azure Cache for Redis. Cuando Estado se muestra como En ejecución, la memoria caché está lista para su uso.

Recuperación del nombre de host, los puertos y las claves de acceso desde Azure Portal

Para conectar el servidor de Azure Cache for Redis, el cliente de dicha caché necesita el nombre de host, los puertos y una clave para la caché. Es posible que algunos clientes utilicen nombres ligeramente diferentes para estos elementos. Puede obtener el nombre de host, los puertos y las claves de Azure Portal.

  • Para obtener las claves de acceso, seleccione Autenticación en el menú Recurso. A continuación, seleccione la pestaña Claves de acceso.

    Claves de Azure Redis Cache

  • Para obtener el nombre de host y los puertos de la memoria caché, seleccione Información general en el menú Recurso. El nombre de host tiene el formato <nombre_DNS>.redis.cache.windows.net.

    Propiedades de Azure Redis Cache

Configuración del entorno de trabajo

En función del sistema operativo, agregue variables de entorno para el nombre de host y la clave de acceso primaria que anotó anteriormente. Abra un símbolo del sistema o una ventana de terminal y configure los siguientes valores:

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

Reemplace los marcadores de posición por los siguientes valores:

  • <your-host-name>: nombre de host DNS, que se obtiene en la sección Propiedades del recurso de Azure Cache for Redis en Azure Portal.
  • <your-primary-access-key>: clave de acceso principal, que se obtiene en la sección Claves de acceso del recurso de Azure Cache for Redis en Azure Portal.

Descripción del ejemplo de Java

En este ejemplo, usará Maven para ejecutar la aplicación de inicio rápido.

  1. Cambie al nuevo directorio del proyecto redistest.

  2. Abra el archivo pom.xml. En el archivo, verá una dependencia de Jedis:

    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>4.1.0</version>
      <type>jar</type>
      <scope>compile</scope>
    </dependency>
    
  3. Cierre el archivo pom.xml.

  4. Abra App.java y observe el código con el código siguiente:

    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 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();
        }
    }
    

    Este código muestra cómo conectarse a una instancia de Azure Redis Cache usando las variables de entorno de nombre de host de caché y clave. El código también almacena y recupera un valor de cadena en la memoria caché. También se ejecutan los comandos PING y CLIENT LIST.

  5. Cierre App.java.

Compilación y ejecución de la aplicación

  1. En primer lugar, si aún no lo ha hecho, debe establecer las variables de entorno como se indicó anteriormente.

    export REDISCACHEHOSTNAME=<your-host-name>.redis.cache.windows.net
    export REDISCACHEKEY=<your-primary-access-key>
    
  2. Ejecute el siguiente comando de Maven para compilar y ejecutar la aplicación:

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

En la siguiente salida, puede ver que la clave Message tenía un valor almacenado en la caché. El valor se actualizó a uno nuevo mediante jedis.set. La aplicación también ejecutó los comandos PING y 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

Limpieza de recursos

Si continúa usando el código de inicio rápido, puede mantener los recursos creados en este inicio rápido y volverlos a usar.

En caso contrario, si ya ha terminado con la aplicación de ejemplo de la guía de inicio rápido, puede eliminar los recursos de Azure creados en este tutorial para evitar cargos.

Importante

La eliminación de un grupo de recursos es irreversible y el grupo de recursos y todos los recursos que contiene se eliminarán de forma permanente. Asegúrese de no eliminar por accidente el grupo de recursos o los recursos equivocados. Si ha creado los recursos para hospedar este ejemplo en un grupo de recursos existente que contiene recursos que quiere conservar, puede eliminar cada recurso individualmente en lugar de eliminar el grupo de recursos.

  1. Inicie sesión en Azure Portal y después seleccione Grupos de recursos.

  2. Escriba el nombre del grupo de recursos en el cuadro de texto Filtrar por nombre. En las instrucciones de este artículo se usa un grupo de recursos llamado TestResources. En el grupo de recursos de la lista de resultados, seleccione ... y, después, Eliminar grupo de recursos.

    Captura de pantalla de Azure Portal que muestra la página Grupos de recursos con el botón Eliminar grupo de recursos resaltado.

  3. Escriba el nombre del grupo de recursos para confirmar la eliminación y, después, seleccione Eliminar.

Transcurridos unos instantes, el grupo de recursos y todos los recursos que contiene se eliminan.

Pasos siguientes

En este inicio rápido, ha aprendido a usar Azure Redis Cache desde una aplicación Java. Continúe con el siguiente inicio rápido para usar Azure Redis Cache con una aplicación web ASP.NET.