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

Из этой статьи вы узнаете, как реализовать кэш Azure для Redis в приложении Python для обеспечения доступа к защищенному выделенному кэшу, к которому может обращаться любое приложение в Azure.

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

Если вы хотите сразу перейти к коду, см. краткое руководство по Python на сайте GitHub.

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

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

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

    Область навигации слева с выделенным элементом

  2. На странице Создание выберите Базы данных, а затем Кэш Azure для Redis.

    Страница

  3. На странице Новый кэш Redis настройте параметры для нового кэша.

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

  5. На вкладке Сети выберите способ подключения.

  6. Нажмите кнопку "Далее" или нажмите кнопку "Далее" в нижней части страницы, чтобы просмотреть вкладку "Дополнительно".

    Снимок экрана: вкладка

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

  8. При необходимости на вкладке Теги введите имя и значение, чтобы классифицировать ресурс.

  9. Выберите Review + create (Просмотреть и создать). Вы будете перенаправлены на вкладку Проверка и создание, где Azure проверит вашу конфигурацию.

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

Для создания кэша требуется некоторое время. Вы можете отслеживать ход выполнения на странице обзорных сведений кэша Azure для Redis. Когда Состояние примет значение Running (Выполняется), кэш будет готов к использованию.

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

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

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

    Ключи кэша Azure для Redis

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

    Свойства Кэша Azure для Redis

Установка redis-py

Redis-py — это интерфейс Python для кэша Redis для Azure. Используйте средство пакетов Python, pipчтобы установить redis-py пакет из командной строки.

Следующий пример, используемый pip3 для установки redis-py Python 3 в Windows 11 из командной строки Администратор istrator.

Снимок экрана: терминал с установкой интерфейса redis-py для Кэш Azure для Redis.

Операции чтения и записи в кэше

Запустите Python из командной строки и проверьте кэш, используя следующий код. Замените <Your Host Name> и <Your Access Key> значениями для своего экземпляра Кэша Azure для Redis. Имя узла имеет форму <DNS name>.redis.cache.windows.net.

>>> import redis
>>> r = redis.StrictRedis(host='<Your Host Name>',
        port=6380, db=0, password='<Your Access Key>', ssl=True)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
b'bar'

Внимание

Для Кэш Azure для Redis версии 3.0 или более поздней проверка TLS/SSL-сертификата проводится принудительно. ssl_ca_certsнеобходимо явно задать при подключении к Кэш Azure для Redis. Для RedHat Linux ssl_ca_certs в модуле /etc/pki/tls/certs/ca-bundle.crt сертификата.

Создание примера приложения Python

Создайте текстовый файл, добавьте следующий скрипт и сохраните файл как PythonApplication1.py. Замените <Your Host Name> и <Your Access Key> значениями для своего экземпляра Кэша Azure для Redis. Имя узла имеет форму <DNS name>.redis.cache.windows.net.

import redis

myHostname = "<Your Host Name>"
myPassword = "<Your Access Key>"

r = redis.StrictRedis(host=myHostname, port=6380,
                      password=myPassword, ssl=True)

result = r.ping()
print("Ping returned : " + str(result))

result = r.set("Message", "Hello!, The cache is working with Python!")
print("SET Message returned : " + str(result))

result = r.get("Message")
print("GET Message returned : " + result.decode("utf-8"))

result = r.client_list()
print("CLIENT LIST returned : ")
for c in result:
    print(f"id : {c['id']}, addr : {c['addr']}")

Запустите PythonApplication1.py с помощью Python. Вы должны увидеть результаты, как на снимке экрана ниже.

Снимок экрана: терминал, показывающий скрипт Python для тестирования доступа к кэшу.

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

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

Внимание

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

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

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

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

  3. На странице группы ресурсов щелкните Удалить группу ресурсов.

  4. Введите имя группы ресурсов, а затем щелкните Удалить.

    Снимок экрана: портал Azure, показывающий, как удалить группу ресурсов для Кэш Azure для Redis.

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