Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Из этого краткого руководства вы узнаете, как с помощью Visual Studio 2019 создать веб-приложение ASP.NET, которое подключается к кэшу Azure для Redis для хранения и извлечения данных из кэша. После этого вы можете развернуть приложение в Службе приложений Azure.
Переход к коду на GitHub
Клонируйте репозиторий https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet в GitHub.
Предпосылки
- Подписка Azure — создайте бесплатную учетную запись.
- Visual Studio 2019 с рабочими нагрузками ASP.NET и веб-разработка и Разработка Azure.
- платформа .NET Framework 4 или более поздней версии требуется клиентом StackExchange.Redis.
Создайте управляемый экземпляр Redis в Azure
Чтобы создать экземпляр Azure Managed Redis, войдите на портал Azure и выберите "Создать ресурс".
На новой странице в поле поиска введите Кэш Azure для Redis.
На вкладке "Новый кэш Redis" настройте параметры для нового кэша в основах.
Настройки Выберите значение Описание Подписка Раскройте список и выберите нужную подписку. Подписка, в которой создается новый экземпляр Управляемого Redis Azure. Группа ресурсов Раскройте список и выберите группу ресурсов или нажмите Создать и введите имя для новой группы ресурсов. Имя группы ресурсов, в которой будут созданы кэш и другие ресурсы. Поместив все ресурсы приложения в одну группу ресурсов, вы сможете легко управлять ими и/или удалить их вместе. Имя Введите уникальное в пределах региона имя. Имя кэша должно быть строкой от 1 до 63 символов при сочетании с именем региона кэша, содержащим только цифры, буквы или дефисы. (Если имя кэша меньше 45 символов, оно должно работать во всех доступных регионах.) Имя должно начинаться и заканчиваться числом или буквой и не может содержать последовательные дефисы. Имя. Регион Раскройте список и выберите место. Управляемый Redis azure доступен в выбранных регионах Azure. Уровень данных Выберите в памяти для высокой производительности или Flash для более низких производительности кэшей Уровни в памяти включают Balanced, Memory Optimized и Compute Optimized. Используйте уровень Flash для работы с данными в памяти (ОЗУ) и на твердотельном накопителе (SSD). Размер кэша Выпадающее меню и выбор размера. Размер кэша зависит от уровня. Наименьший размер — это сбалансированный уровень. Самый большой уровень в памяти — это оптимизированный для памяти уровень. Производительность Разверните список и выберите предпочтение производительности. Производительность зависит от количества виртуальных ЦП. Количество виртуальных ЦП зависит от уровня. Оптимизированный для вычислений имеет наибольшее количество виртуальных ЦП. Рекомендации по выбору нужного уровня производительности см. в разделе "Выбор нужного уровня".
Это важно
Все уровни памяти с объемом хранилища более 120 ГБ находятся в общедоступной предварительной версии, включая оптимизированные по памяти M150 и выше; сбалансированные B150 и выше; и оптимизированные по вычислениям X150 и выше. Все эти уровни и выше находятся в общедоступной предварительной версии.
Все уровни, оптимизированные для флэш-памяти, находятся в общедоступном предварительном доступе.
Нажмите кнопку "Далее": сеть и выберите общедоступную конечную точку или частную конечную точку.
Нажмите кнопку "Далее": активная георепликация. Чтобы использовать активную георепликацию, ее необходимо включить во время подготовки. Кэши без активной георепликации нельзя впоследствии добавлять в группы активной георепликации или присоединяться к ним. Дополнительные сведения см. в разделе "Настройка активной георепликации для экземпляров Управляемого Redis Azure".
Нажмите кнопку "Далее": вкладка "Дополнительно ".
Настройте все модули Redis , которые нужно добавить в экземпляр.
По умолчанию для нового управляемого кэша:
- Идентификатор Microsoft Entra включен.
- Проверка подлинности ключей доступа отключена по соображениям безопасности.
Это важно
Для оптимальной безопасности рекомендуется использовать идентификатор Microsoft Entra с управляемыми удостоверениями для авторизации запросов к кэшу, если это возможно. Авторизация с помощью идентификатора Microsoft Entra и управляемых удостоверений обеспечивает более высокую безопасность и удобство использования при авторизации ключа общего доступа. Для получения дополнительной информации об использовании управляемых удостоверений с кэшем см. в разделе Используйте идентификатор Microsoft Entra для проверки подлинности кэша.
Задайте политику кластеризации:
- Использование Enterprise для использования RedisSearch или других модулей
- Используйте OSS для кластеризованного кэша.
- Используйте Некластеризованный (Превью) для некластеризованного кэша.
Дополнительные сведения о выборе политики кластеризации см. в статье "Политика кластера".
Это важно
После создания не удается изменить политику кластеризации управляемого экземпляра Redis Azure. Если вы используете RediSearch, требуется политика кластера Enterprise и
NoEviction
является единственной поддерживаемой политикой вытеснения.Это важно
Если вы используете этот экземпляр кэша в группе георепликации, политики вытеснения нельзя изменить после создания экземпляра. Перед созданием кэша необходимо знать политики вытеснения основных узлов. Дополнительные сведения о активной георепликации см. в разделе "Предварительные требования для активной георепликации".
Это важно
После создания экземпляра кэша нельзя изменять модули. Модули должны быть включены во время создания экземпляра Кэш Azure для Redis. После создания кэша невозможно включить настройку модуля.
Нажмите кнопку "Далее": теги и пропуск.
Нажмите кнопку "Далее": проверка и создание.
Проверьте параметры и выберите Создать.
Создание экземпляра Redis занимает несколько минут. Ход выполнения можно отслеживать на странице обзора Управляемого Redis в Azure. Когда Состояние примет значение Running (Выполняется), кэш будет готов к использованию.
Создание экземпляра кэша Azure для Redis
На портале Azure найдите и выберите кэш Azure для Redis.
На странице кэша Azure для Redis выберите "Создать>кэш Azure для Redis".
На вкладке "Основы" страницы"Новый кэш Redis " настройте следующие параметры:
- Подписка. Выберите нужную подписку.
- Группа ресурсов: выберите группу ресурсов или нажмите кнопку "Создать" и введите новое имя группы ресурсов. Размещение всех ресурсов приложения в одной группе ресурсов позволяет легко управлять и удалять их вместе.
-
Имя: введите уникальное имя кэша в регионе. Имя должно быть:
- Должна быть строка длиной от 1 до 63 символов.
- Содержит только цифры, буквы и дефисы.
- Начните и закончите числом или буквой.
- Не содержит последовательные дефисы.
- Регион. Выберите регион Azure рядом с другими службами, используюющими кэш.
- Номер SKU кэша: выберите номер SKU , чтобы определить доступные размеры, производительность и функции кэша.
- Размер кэша: выберите размер кэша. Дополнительные сведения см. в статье Общие сведения о Кэше Azure для Redis.
Выберите вкладку "Сеть" или нажмите кнопку "Далее: Сеть".
На вкладке "Сеть" выберите метод подключения, используемый для кэша. Для обеспечения безопасности рекомендуется использовать частную конечную точку. Если выбрать частную конечную точку, выберите "Добавить частную конечную точку" и создайте частную конечную точку.
Выберите вкладку "Дополнительно" или нажмите кнопку "Далее".
На панели "Дополнительно" настройте следующие параметры:
- Выберите Microsoft Entra Authentication или Access Keys Authentication. Проверка подлинности Microsoft Entra включена по умолчанию.
- Выберите, следует ли включить порт, отличный от TLS.
- Для кэша уровня "Премиум" можно настроить или отключить зоны доступности. После создания кэша невозможно отключить зоны доступности. Для кэша уровня "Стандартный" зоны доступности выделяются автоматически. Зоны доступности недоступны для базовой SKU.
- Для кэша Premium настройте параметры для числа реплик, кластеризации и числа шардов, управляемого удостоверения, назначаемого системой, и сохранения данных.
На следующем рисунке показана вкладка "Дополнительно " для номера SKU "Стандартный".
Это важно
Используйте Microsoft Entra ID с управляемыми удостоверениями, чтобы авторизовать запросы к кэшу, если это возможно. Авторизация с помощью идентификатора Microsoft Entra и управляемого удостоверения обеспечивает более высокую безопасность и проще использовать, чем авторизация общего ключа доступа. Для получения дополнительной информации об использовании управляемых удостоверений с кэшем см. в разделе Используйте идентификатор Microsoft Entra для проверки подлинности кэша.
При необходимости выберите вкладку "Теги " или нажмите кнопку "Далее" и введите имена тегов и значения, чтобы классифицировать ресурсы кэша.
Выберите "Просмотр и создание" и после прохождения проверки нажмите кнопку "Создать".
Развертывание нового кэша занимает несколько минут. Ход развертывания можно отслеживать на странице кэша Azure для Redis на портале. Когда состояние кэша отображается запущено, кэш готов к использованию.
Проверка подлинности идентификатора Microsoft Entra (рекомендуется)
Использование проверки подлинности идентификатора Microsoft Entra в кэше
Кэши Redis, управляемые Azure, по умолчанию включают аутентификацию Microsoft Entra.
В портал Azure выберите кэш, в котором вы хотите использовать проверку подлинности на основе токена Microsoft Entra.
Выберите проверку подлинности в меню "Ресурс".
Выберите элемент и введите имя допустимого пользователя. По умолчанию, когда вы выбираете Сохранить, пользователю, которого вы вводите, автоматически назначается Политика доступа владельца данных. Вы также можете ввести управляемое удостоверение или служебный принципал, чтобы подключиться к экземпляру кэша.
Сведения об использовании идентификатора Microsoft Entra с Azure CLI см. на справочных страницах для удостоверений.
Установка библиотеки для использования проверки подлинности идентификатора Microsoft Entra ID
Библиотека Azure.StackExchange.Redis содержит корпорацию Майкрософт с помощью метода проверки подлинности идентификатора Microsoft Entra для подключения к службам Redis Azure с помощью идентификатора Microsoft Entra. Это применимо ко всем Azure Cache для Redis, Azure Cache для Redis Enterprise и Azure Managed Redis.
Откройте проект в Visual Studio.
Щелкните проект правой кнопкой мыши, выберите пункт "Управление пакетами NuGet...
Найдите элемент
Microsoft.Azure.StackExchangeRedis
.Нажмите кнопку "Установить ", чтобы установить
Примите все запрошенное содержимое, чтобы завершить установку
Подключение к кэшу с помощью идентификатора Microsoft Entra
Включение библиотек в код
using Azure.Identity; using StackExchange.Redis
Использование учетных данных Azure по умолчанию для проверки подлинности подключения клиента. Это позволяет коду использовать учетные данные пользователя, выполнившего вход в систему локально, и управляемое удостоверение Azure при выполнении в Azure без изменения кода.
var configurationOptions = await ConfigurationOptions.Parse($"{_redisHostName}").ConfigureForAzureWithTokenCredentialAsync(new DefaultAzureCredential());
ConnectionMultiplexer _newConnection = await ConnectionMultiplexer.ConnectAsync(configurationOptions);
IDatabase Database = _newConnection.GetDatabase();
Изменение файла конфигурации web.config
Измените файл конфигурации Web.config, добавив следующее содержимое:
<appSettings> <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/> </appSettings>
Замените
<cache-hostname>
именем узла кэша, как оно отображается в меню "Обзор ресурсов" в портал Azure.Например, с Azure Managed Redis или уровнями Enterprise: *my-redis.eastus.azure.net:10000_
Сохраните файл.
Для получения дополнительных сведений см. статью StackExchange.Redis и код в репозитории GitHub.
Изменение файла конфигурации web.config
Измените файл конфигурации Web.config, добавив следующее содержимое:
<appSettings> <add key="RedisHostName" value="<cache-hostname-with-portnumber>"/> </appSettings>
Замените
<cache-hostname>
именем узла кэша, как оно отображается в меню "Обзор ресурсов" в портал Azure.Например, с Кэш Azure для Redis my-redis.eastus.azure.net:6380
Сохраните файл.
Для получения дополнительных сведений см. статью StackExchange.Redis и код в репозитории GitHub.
Локальный запуск приложения
По умолчанию проект размещает приложение локально в IIS Express для тестирования и отладки.
Запуск приложения на локальном компьютере
В Visual Studio выберите Отладка>Начать отладку, чтобы создать и запустить приложение локально для тестирования и отладки.
В браузере на панели навигации выберите Azure Cache for Redis Test (Проверка кэша Azure для Redis).
В приведенном ниже примере видно, что ключ
Message
ранее содержал кэшированное значение, установленное через консоль кэша Azure для Redis на портале. Приложение обновило кэшированное значение. Кроме того, оно выполнило командыPING
иCLIENT LIST
.
Публикация и выполнение в Azure
После успешного локального тестирования приложения вы сможете развернуть приложение в Azure и запустить его в облаке.
Публикация приложения в Azure
В Visual Studio щелкните узел проекта правой кнопкой мыши в обозревателе решений. Затем щелкните Опубликовать.
Выберите Служба приложений Microsoft Azure, Создать, а затем щелкните Опубликовать.
В диалоговом окне Создать службу приложений внесите следующие изменения:
Настройки Рекомендуемое значение Описание Название приложения Используйте значения по умолчанию. Имя приложения — это имя узла приложения при развертывании в Azure. В имя можно добавить суффикс метки времени, если необходимо сделать его уникальным. Подписка Выберите подписку Azure. В этой подписке взимается плата за связанные операции размещения. Если у вас несколько подписок Azure, убедитесь, что выбрана необходимая подписка. Группа ресурсов Используйте группу ресурсов, в которой создан кэш (например TestResourceGroup). Группа ресурсов позволяет управлять всеми ресурсами как группой. Позже, если вы захотите удалить приложение, можно просто удалить всю группу. План обслуживания приложения Выберите Создать и создайте план службы приложений с именем TestingPlan.
Используйте то же расположение, что и при создании кэша.
В качестве размера выберите Бесплатный.План службы приложений определяет набор вычислительных ресурсов, на которых выполняется веб-приложение. После настройки параметров службы приложений щелкните Создать.
Просмотрите состояние публикации в окне Visual Studio Вывод. После публикации приложения URL-адрес приложения регистрируется:
Добавление параметра приложения для кэша
После публикации нового приложения добавьте новый параметр приложения. Этот параметр используется для хранения сведений о подключении к кэшу.
Добавление параметров приложения
Чтобы найти созданное приложение, введите имя приложения в строке поиска в верхней части портал Azure.
Добавьте параметр нового приложения с именем CacheConnection, которое приложение будет использовать для подключения к кэшу. Используйте то же значение, которое вы настроили
RedisHostName
в файле web.config .
Запуск приложения в Azure
В браузере перейдите по URL-адресу приложения. URL-адрес отображается в результатах выполнения операции публикации в окне выходных данных в Visual Studio. URL-адрес также указан в портал Azure на странице обзора созданного приложения.
В панели навигации выберите Кэш Azure для Redis Test, чтобы проверить доступ к кэшу, как это делалось в локальной версии.
Очистите ресурсы
Если вы хотите продолжить использовать ресурсы, созданные в этой статье, сохраните группу ресурсов.
В противном случае, если вы закончите работу с ресурсами, можно удалить созданную группу ресурсов Azure, чтобы избежать расходов.
Это важно
Удаление группы ресурсов — процесс необратимый. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления. Будьте внимательны, чтобы случайно не удалить не ту группу ресурсов или не те ресурсы. Если вы создали ресурсы внутри существующей группы ресурсов, содержащей ресурсы, которые необходимо сохранить, можно удалить каждый ресурс по отдельности, а не удалить группу ресурсов.
Удаление группы ресурсов
Войдите на портал Azure и выберите группы ресурсов.
Выберите группу ресурсов, которую вы хотите удалить.
Если существует множество групп ресурсов, используйте фильтр для любого поля... введите имя группы ресурсов, созданной для этой статьи. Выберите группу ресурсов в списке результатов.
Выберите команду Удалить группу ресурсов.
Вам предлагается подтвердить удаление группы ресурсов. Введите имя группы ресурсов, которую необходимо удалить, и щелкните Удалить.
Через некоторое время группа ресурсов и все ее ресурсы будут удалены.