Пользовательские обработчики
Функции Azure поддерживают различные языковые среды выполнения. Если выбранный вами язык не поддерживается по умолчанию, можно использовать пользовательский обработчик.
Что представляют собой пользовательские обработчики?
По сути, пользовательский обработчик — это веб-сервер. Веб-сервер получает события из узла Функций. После этого вы получаете возможность написать код на предпочитаемом языке для реагирования на события.
С помощью пользовательских обработчиков можно использовать любой язык, поддерживающий примитивы HTTP. Это практически любой язык.
Основные понятия и поток
В Функциях Azure существуют три основных понятия, которые важно понимать:
- Триггеры. Триггер — это событие, которое начинает выполнение функции. Примерами распространенных триггеров являются HTTP-запросы, новые сообщения очереди и изменения в базе данных. Выбор правильного триггера важен для принятия решения о том, как будет работать функция.
- Привязки. Привязки — это вспомогательный код, который подключает вашу функцию к другой облачной службе. Входные и выходные привязки доступны для передачи данных в функцию и из нее.
- Узел Функций. Узел Функций управляет потоком событий приложения. Когда узел фиксирует события, он вызывает обработчик и отвечает за возврат ответа функции.
Вот как выглядит поток от начала до конца:
Следующие действия описывают обработку запроса с помощью узла Функций и пользовательского обработчика:
- При возникновении события, которое соответствует триггеру (например, HTTP-запросу), в узел Функций отправляется запрос.
- Узел Функций создает полезные данные запроса и отправляет их на веб-сервер (пользовательский обработчик). Полезные данные содержат сведения о триггере, входные данные привязки и другие метаданные.
- Функция выполняет логику, и ответ отправляется обратно в узел Функций.
- Узел Функций передает данные в выходную привязку функции для обработки.