Поделиться через


Краткое руководство. Использование Кэша Azure для Redis с приложениями Java

В этом кратком руководстве описано, как использовать Кэш Azure для Redis с приложениями Java, использующими клиент Jedis. Ваш кэш выделен специально для вас, он безопасен и доступен из любого приложения в Azure.

Переход к коду на GitHub

Клонируйте репозиторий Краткое руководство для Java на GitHub.

Необходимые компоненты

Создание экземпляра кэша Azure для Redis

  1. Чтобы создать кэш, войдите в портал Azure. В меню портала выберите "Создать ресурс".

    Sceenshot, показывающий параметр

  2. В области "Начало работы" введите Кэш Azure для Redis в строке поиска. В результатах поиска найдите Кэш Azure для Redis и нажмите кнопку "Создать".

    Снимок экрана: Azure Marketplace с Кэш Azure для Redis в поле поиска и выделена кнопка

  3. На панели "Новый кэш Redis" на вкладке "Основы" настройте следующие параметры для кэша:

    Параметр Действие Description
    Подписка Выберите свою подписку Azure. Подписка, используемая для создания нового экземпляра Кэш Azure для Redis.
    Группа ресурсов Выберите группу ресурсов или щелкните Создать и введите новое имя группы ресурсов. Имя группы ресурсов, в которой создается кэш и другие ресурсы. Поместив все ресурсы приложения в одну группу ресурсов, вы сможете легко управлять ими и/или удалить их вместе.
    DNS-имя Введите уникальное имя. Имя кэша должно быть строкой от 1 до 63 символов, содержащих только цифры, буквы и дефисы. Имя должно начинаться и заканчиваться цифрой или буквой и не может содержать более одного дефиса подряд. Имя \<DNS name>.redis.cache.windows.netузла экземпляра кэша .
    Местонахождение Выберите расположение. Регион Azure, расположенный рядом с другими службами, используюющими кэш.
    Номер SKU кэша Выберите номер SKU. Номер SKU определяет размер, производительность и параметры компонентов, доступные для кэша. Дополнительные сведения см. в статье Общие сведения о Кэше Azure для Redis.
    Объем кэша Выберите размер кэша. Дополнительные сведения см. в статье Общие сведения о Кэше Azure для Redis.
  4. Перейдите на вкладку "Сеть" или нажмите кнопку "Далее: сеть".

  5. На вкладке "Сеть" выберите метод подключения, используемый для кэша.

  6. Выберите вкладку "Дополнительно" или нажмите кнопку "Далее".

  7. На панели "Дополнительно" проверьте или выберите метод проверки подлинности на основе следующих сведений:

    Снимок экрана: панель

    • По умолчанию для нового кэша "Базовый", "Стандартный" или "Премиум" включена проверка подлинности Microsoft Entra Authentication, а проверка подлинности ключей доступа отключена.
    • Для кэшей "Базовый" или "Стандартный" можно выбрать выбранный порт, отличный от TLS.
    • Для кэшей уровня "Стандартный" и "Премиум" можно включить зоны доступности. После создания кэша невозможно отключить зоны доступности.
    • Для кэша Premium настройте параметры для порта, не относяющегося к TLS, кластеризации, управляемому удостоверению и сохраняемости данных.

    Внимание

    Для оптимальной безопасности рекомендуется использовать идентификатор Microsoft Entra с управляемыми удостоверениями для авторизации запросов к кэшу, если это возможно. Авторизация с помощью идентификатора Microsoft Entra и управляемых удостоверений обеспечивает более высокую безопасность и удобство использования при авторизации ключа общего доступа. Дополнительные сведения об использовании управляемых удостоверений с кэшем см. в разделе "Использование идентификатора Microsoft Entra для проверки подлинности кэша".

  8. (Необязательно) Выберите вкладку "Теги" или нажмите кнопку "Далее: теги".

  9. (Необязательно) На вкладке "Теги" введите имя и значение тега, если вы хотите классифицировать ресурс кэша.

  10. Нажмите кнопку Просмотреть и создать.

    На вкладке "Проверка и создание " Azure автоматически проверяет конфигурацию.

  11. Когда отобразится сообщение Проверка пройдена зеленого цвета, выберите Создать.

Развертывание нового кэша происходит в течение нескольких минут. Ход развертывания можно отслеживать на панели обзора Кэш Azure для Redis. Когда отображается состояние выполнения, кэш готов к использованию.

Получение имени узла, портов и ключей доступа с помощью портала Azure

Чтобы подключить сервер Кэша Azure для Redis, для клиента кэша необходимо указать имя узла, порты и ключ для кэша. Некоторые клиенты могут ссылаться на эти элементы с помощью незначительно различающихся имен. Вы можете получить имя узла, порты и ключи на портале Azure.

  • Чтобы получить ключи доступа, выберите "Проверка подлинности " в меню "Ресурс". Затем откройте вкладку "Ключи доступа".

    Снимок экрана: ключи доступа Кэш Azure для Redis.

  • Чтобы получить имя узла и порты для кэша, выберите "Обзор " в меню "Ресурс". Имя узла имеет вид <DNS-имя>.redis.cache.windows.net.

    Снимок экрана: свойства Кэш Azure для Redis.

Настройка рабочей среды

В зависимости от операционной системы добавьте переменные среды для имени узла и ключа первичного доступа , который вы указали ранее. Откройте окно командной строки или окно терминала и задайте следующие значения:

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

Замените значения заполнителей следующими значениями:

  • <your-host-name>: DNS-имя узла, полученное из раздела "Свойства" ресурса Кэш Azure для Redis в портал Azure.
  • <your-primary-access-key>: первичный ключ доступа, полученный из раздела "Ключи доступа" ресурса Кэш Azure для Redis в портал Azure.

Общие сведения о примере Java

В этом примере вы запустите пример приложения с помощью Maven.

  1. Перейдите к каталогу нового проекта redistest.

  2. Откройте файл pom.xml. В файле отображается зависимость для Jedis:

    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>4.1.0</version>
      <type>jar</type>
      <scope>compile</scope>
    </dependency>
    
  3. Закройте файл pom.xml.

  4. Откройте файл App.java и ознакомьтесь с представленным ниже кодом:

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

    Этот код показывает, как подключиться к экземпляру кэша Redis для Azure, используя имя узла кэша и переменные среды ключа. Код также хранит строковое значение в кэше и извлекает его. Также выполняются команды PING и CLIENT LIST.

  5. Закройте файл App.java.

Сборка и запуск приложения

  1. Во-первых, если вы еще не сделали этого, необходимо задать переменные среды, как отмечалось ранее.

    export REDISCACHEHOSTNAME=<your-host-name>.redis.cache.windows.net
    export REDISCACHEKEY=<your-primary-access-key>
    
  2. Выполните следующую команду Maven для построения и запуска приложения:

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

В следующих выходных данных видно, что Message ключ ранее имел кэшированное значение. Оно было обновлено до нового значения с помощью jedis.set. Кроме того, оно выполнило команды PING и 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

Очистка ресурсов

Для работы с кодом примера вы можете сохранить и использовать ресурсы, созданные в этом кратком руководстве.

В противном случае, если вы закончили работу с примером приложения из краткого руководства, вы можете удалить ресурсы Azure, созданные в текущем руководстве, чтобы избежать ненужных расходов.

Внимание

Удаление группы ресурсов — необратимая операция, и все соответствующие ресурсы удаляются окончательно. Будьте внимательны, чтобы случайно не удалить не ту группу ресурсов или не те ресурсы. Если вы создали ресурсы для размещения этого примера в существующей группе ресурсов, содержащей ресурсы, которые необходимо сохранить, можно удалить каждый ресурс по отдельности, а не удалить группу ресурсов.

  1. Войдите в портал Azure и выберитеГруппы ресурсов.

  2. Введите имя группы ресурсов в текстовое поле Фильтровать по имени. В инструкциях в этой статье использовалась группа ресурсов с именем TestResources. В своей группе ресурсов в списке результатов выберите ..., а затем Удалить группу ресурсов.

    Снимок экрана: портал Azure, на котором показана страница

  3. Введите имя группы ресурсов, чтобы подтвердить удаление, а затем нажмите кнопку "Удалить".

Через некоторое время группа ресурсов и все ее ресурсы будут удалены.

Следующие шаги

Из этого краткого руководства вы узнали, как использовать кэш Redis для Azure в приложениях Java. Переходите к следующему краткому руководству по использованию кэша Azure для Redis в веб-приложениях ASP.NET.