документация по масштабированию для Функций Azure немного освещает детали того, как Функции Azure решают когда добавлять больше экземпляров приложения.
Скажем, например, у меня есть функция, которая запускается веб-перехватчиком Github. 10 000 человек одновременно используют репозиторий Github (без конфликтов слияния;)), а Github вызывает мою функцию 10 000 раз за очень короткий период времени.
Что я могу ожидать? Конкретно,
- Будут ли функции Azure ограничивать вызовы веб-перехватчиков? т.е. будут ли функции Azure отклонять определенные вызовы функций, если мое приложение-функция находится под высокой нагрузкой?
- Служит ли функциям Azure каким-либо образом очереди запросов? Если да, то где / как?
- Сколько экземпляров моего приложения-функции будут созданы Функциями Azure в этом сценарии? По одному на каждый запрос (т. Е. 10 000), и каждый будет выполняться параллельно?
- Если бы моя функция приложения была уменьшена до нуля экземпляров, потому что на нее не было нагрузки, мог ли я ожидать увидеть некоторое «время разогрева» перед выполнением первой функции? Примерно как долго?