Принцип работы Функций Azure
Здесь вы узнаете, как использовать Функции Azure для разработки бессерверных архитектур и использования различных реализаций функций, которые он предоставляет.
Вы также узнаете больше о том, как работает Функции Azure. Сведения, которые помогут вам определить, как соответствовать требованиям вашей организации, делая лучшее использование Функции Azure.
Функции Azure — это бессерверное вычислительное решение, которое позволяет писать меньше кода. Это предложение "платформа как услуга", поэтому вам не нужно беспокоиться о размещении приложения, что позволяет сократить затраты.
Функции Azure — это идеальное решение для обработки данных, интеграции систем, работы с Интернетом вещей (IoT) и создания простых API-интерфейсов и микрослужб.
Масштабирование приложений-функций
Контекст, в котором выполняются функции, называется приложением-функцией. Приложение-функция — это единица развертывания и масштабирования функций, а также управления ими. Функции в приложении-функции используют одинаковые параметры и подключения.
В планах потребления и уровня "Премиум" Функции Azure масштабирует ресурсы ЦП и памяти путем добавления дополнительных экземпляров приложения-функции. Количество экземпляров определяется на основе числа событий, которые активируют функцию. Так как все функции в приложении-функции совместно используют ресурсы в экземпляре приложения, они масштабируются одновременно.
Мониторинг Функций Azure
Решение Функции Azure предлагает встроенную интеграцию со службой Azure Application Insights для мониторинга функций. Служба Application Insights собирает данные журналов, сведения о производительности и информацию об ошибках. Это помогает обнаруживать аномалии производительности, диагностировать проблемы и лучше понимать, как используются функции.
Инструментирование Application Insights встроено в Функции Azure. При интеграции с Application Insights данные телеметрии отправляются в подключенный экземпляр Application Insights. Эти данные включают журналы, созданные узлом Функций Azure, трассировки, записанные из кода функций, и данные о производительности.
Примечание.
Помимо данных из функций и узла Функций Azure, можно также собирать данные из контроллера масштабирования Функций Azure.
На следующем изображении показан пример просмотра данных в Application Insights для приложения-функции.
Компоненты Функций Azure
В следующей таблице описаны ключевые компоненты Функций Azure:
Компонент | Description |
---|---|
Триггеры функций | Триггеры — это причина запуска функции. Триггер определяет способ вызова функции. У функции должен быть только один триггер. |
Привязки функций | Привязка к функции — это способ декларативного подключения другого ресурса к функции; привязки могут быть подключены как входные привязки, выходные привязки или оба. Данные привязок предоставляются функции в качестве параметров. Если вы не хотите или не можете использовать привязки, вы по-прежнему можете использовать клиентский пакет SDK в функциях при подключении к службам. |
Среда выполнения функций | В настоящее время решение "Функции Azure" поддерживает несколько версий хост-приложения среды выполнения. Функции также поддерживают множество различных сред выполнения, таких как .NET Core, Node.JavaScript, Java, PowerShell и Python. Во время разработки можно установить среду выполнения Функций на локальном компьютере и выполнять функции локально с помощью Azure Functions Core Tools. |
Управление API (APIM) | APIM обеспечивает безопасность и маршрутизацию для конечных точек функций, активируемых HTTP, в качестве способа предоставления их в виде REST API. |
Слоты развертывания | Функции Azure слоты развертывания позволяют приложению-функции запускать различные экземпляры, называемые слотами. Слоты — это разные среды, предоставляемые через общедоступную конечную точку. Слоты позволяют тестировать новую версию функций в Azure в безопасной среде, а затем легко переключить новую версию на рабочую среду. |
Конфигурация приложения функции | Строки подключения, переменные среды и другие параметры приложения определяются отдельно для каждого приложения-функции. Эти значения параметров приложения-функции могут считываться в коде как переменные среды. |
Эти компоненты работают вместе, чтобы обеспечить полную сквозную платформу для инженеров Application и DevOps для разработки бессерверных архитектур с помощью Функции Azure.