Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается, как использовать управляемый redis или Кэш Azure для Redis Azure с Функции Azure для создания оптимизированных бессерверных и управляемых событиями архитектур.
Функции Azure предоставляет модель программирования на основе событий, в которой триггеры и привязки являются ключевыми функциями. С помощью Функции Azure можно легко создавать бессерверные приложения на основе событий. Службы Redis Azure (Управляемый Redis Azure и Кэш Azure для Redis) предоставляют набор стандартных блоков и рекомендаций по созданию распределенных приложений, включая микрослужбы, управление состояниями, паб или вложенные сообщения и многое другое.
Azure Redis можно использовать в качестве триггера для Функции Azure, что позволяет инициировать бессерверный рабочий процесс. Эта функция может быть очень полезной в архитектурах данных, таких как кэш за записью или любые архитектуры на основе событий.
Вы можете интегрировать Azure Redis и Функции Azure для создания функций, которые реагируют на события из Azure Redis или внешних систем.
| Действие | Направление |
|---|---|
| Триггер в вложенных сообщениях Redis pub | Триггер |
| Триггер в списках Redis | Триггер |
| Триггер потоков Redis | Триггер |
| Чтение кэшированного значения | Входные данные |
| Запись значений в кэш | Выходные данные |
Область доступности триггеров и привязок функций
| Уровень | Кэш Azure для Redis (Базовый, Стандартный, Премиум, Enterprise, Enterprise Flash) | Управляемый Redis Azure (оптимизированная для памяти, базовая, оптимизированная для вычислений, оптимизированная для флэш-памяти) |
|---|---|---|
| Публикация и подписка | Да | Да |
| Списки | Да | Да |
| Потоки | Да | Да |
| Привязки | Да | Да |
Внимание
Триггеры Redis в настоящее время поддерживаются только для функций, работающих в плане Elastic Premium или выделенном плане Служба приложений.
Установка расширения
Функции выполняются в изолированном рабочем процессе C#. Дополнительные сведения см. в руководстве по запуску Функции Azure C# в изолированном рабочем процессе.
Добавьте расширение в проект, установив данный пакет NuGet.
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Redis
Установка пакета
Чтобы использовать это расширение привязки в приложении, убедитесь, что файл host.json в корне проекта содержит следующую extensionBundle ссылку:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
В этом примере значение указывает узлу version функций использовать версию пакета, которая по крайней мере [4.0.0, 5.0.0) меньше4.0.0, чем , которая включает все потенциальные версии 4.x.5.0.0 Эта нотация эффективно поддерживает ваше приложение в последней доступной дополнительной версии пакета расширений версии 4.x.
По возможности следует использовать последнюю версию пакета расширений и разрешить среде выполнения автоматически поддерживать последнюю дополнительную версию. Содержимое последнего пакета можно просмотреть на странице выпуска пакетов расширений. Дополнительные сведения см. в пакетах расширений функций Azure.
Обновление пакетов
Добавьте пакет заметок Redis для Функций Azure в проект, обновив pom.xml файл, чтобы добавить эту зависимость:
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-redis</artifactId>
<version>1.0.0</version>
</dependency>
Redis строка подключения
Триггеры и привязки Redis Azure имеют обязательное свойство, указывающее параметр приложения или имя коллекции, содержащее сведения о подключении кэша. Триггер Redis или привязка ищет переменную среды, содержащую строка подключения с именем, переданным параметруConnection.
В локальной разработке Connection можно определить с помощью файла local.settings.json. При развертывании в Azure можно использовать параметры приложения.
При подключении к экземпляру кэша с помощью функции Azure можно использовать одно из следующих типов подключений в развертываниях:
- Управляемое удостоверение, назначаемое пользователем
- Назначаемое системой управляемое удостоверение
- Строка подключения
- Субъект-служба
Управляемое удостоверение, назначаемое пользователем, должно быть связано с приложением-функцией, и это удостоверение также должно быть предоставлено явным разрешениям в службе кэша. Дополнительные сведения см. в разделе "Использование идентификатора Microsoft Entra для проверки подлинности кэша".
В этих примерах показано имя ключа и значение параметров приложения, необходимых для подключения к каждой службе кэша на основе типа проверки подлинности клиента, при условии, что Connection для свойства в привязке задано значение Redis.
"Redis__redisHostName": "<cacheName>.<region>.redis.azure.net",
"Redis__principalId": "<principalId>",
"Redis__clientId": "<clientId>"