#azure-functions #azure-eventhub
#azure-функции #azure-eventhub
Вопрос:
У меня есть приложение Azure function, которое обрабатывает данные из EventHub. Мой текущий процесс CI / CD использует слоты развертывания для развертывания:
- Развертывание функции в промежуточный слот
- Проверьте промежуточный слот с помощью дымового теста
- Замена промежуточной обработки на рабочую
Сам поток CI / CD работает без проблем. Однако в то время, когда мой промежуточный слот активен, я, по сути, дважды обрабатываю сообщения из EventHub, поскольку есть два активных функциональных приложения.
Каков наилучший практический способ обработки CI / CD для подобных интеграционных приложений? Есть ли способ привязать события к определенному слоту с помощью EventHub в привязке функции? Возможно, это неизбежно, и решение заключается в удвоении идемпотентности?
Комментарии:
1. Это интересный вопрос, поскольку концентраторы событий разрешают только одно активное развертывание для определенной группы потребителей. Интересно, развертываете ли вы как производственные, так и промежуточные, ориентированные на одну и ту же группу потребителей EH.
2. Да, я на самом деле указываю группу потребителей в функции, поэтому промежуточный слот должен использоваться так же, как и рабочий. Кажется странным создавать группу потребителей для промежуточной обработки, особенно учитывая, что это удвоило бы мои затраты. Может быть, способ, которым я использую промежуточный слот в качестве основы для prod, вводит в заблуждение?
3. Поскольку это разные слоты для одного и того же развертывания, я бы ожидал, что служба будет запускать только функцию рабочего слота и избегать дублирования. Может быть, кто-то из функций может помочь исправить мое понимание.
4. @SerkantKaraca — есть ли у вас кто-нибудь из этой команды, кого вы могли бы попросить о помощи?
Ответ №1:
Вы можете использовать параметры приложения slot sticky, чтобы определить, какую группу потребителей использовать, к которой будут применяться во время обмена.
Убедитесь, что вы используете настройку свойства группы потребителей для ссылки на настройки приложения.
При таком подходе у вас может быть отдельная группа потребителей для проверки дыма, а при замене будет использоваться рабочая группа потребителей.
Комментарии:
1. Параметр «Настройка слота развертывания» был именно тем, что мне здесь было нужно. Спасибо!