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


Бессерверные архитектуры на основе событий с Azure Cosmos DB и Функциями Azure

ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL

Функции Azure обеспечивают самый простой способ подключения к каналу изменений. Вы можете создавать небольшие, реактивные функции Azure, которые автоматически активируются на каждом новом событии в канале изменений контейнера Azure Cosmos DB.

Схема бессерверных функций на основе событий, работающих с триггером Функций Azure для Azure Cosmos DB.

С помощью триггера Функций Azure для Azure Cosmos DB можно использовать возможности масштабирования и надежного обнаружения событий обработчика изменений без необходимости поддерживать рабочую инфраструктуру. Просто сосредоточьтесь на логике функции Azure, не беспокоясь об остальной части конвейера обработки событий. Вы даже можете смешивать триггер с любыми другими привязками Функций Azure.

Примечание.

Триггер Функций Azure использует режим отслеживания изменений последней версии. В настоящее время триггер функций Azure для Azure Cosmos DB поддерживается только для использования с API для NoSQL.

Требования

Чтобы реализовать бессерверный поток на основе событий, вам потребуется:

  • Отслеживаемый контейнер: отслеживаемый контейнер Azure Cosmos DB, в котором сохраняются данные, на основе которых формируется канал изменений. Всякие вставки или обновления в отслеживаемом контейнере отражаются в ленте изменений контейнера.
  • Контейнер аренды. Контейнер аренды сохраняет состояние в нескольких бессерверных динамических экземплярах Функций Azure и включает динамическое масштабирование. Контейнер аренды можно создать автоматически с помощью триггера Функции Azure для Azure Cosmos DB. Вы также можете создать контейнер аренды вручную. Чтобы автоматически создать контейнер аренды, задайте свойство CreateLeaseContainerIfNotExists в конфигурации. Секционированные контейнеры аренды должны иметь определение ключа раздела /id.

Создание триггера Функции Azure для Azure Cosmos DB

Создание вашей функции Azure с триггером Azure Functions для Azure Cosmos DB теперь поддерживается во всех интеграциях Azure Functions в IDE и CLI.

Локальный запуск вашего триггера

Вы можете локально запустить функцию Azure с помощью эмулятора Azure Cosmos DB для создания и разработки потоков на основе бессерверных событий без подписки Azure или выполнения каких-либо расходов.

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

Теперь вы можете узнать больше о канале изменений в следующих статьях: