Manipuladores personalizados

Concluído

O Azure Functions apresenta uma variedade de runtimes de linguagem. Se a linguagem de sua escolha não for fornecida por padrão, você poderá usar um manipulador personalizado.

O que são manipuladores personalizados?

Em seu núcleo, um manipulador personalizado é um servidor Web. O servidor Web recebe eventos do host do Functions. Em seguida, você tem a oportunidade de escrever códigos em sua linguagem de preferência para responder aos eventos.

Com manipuladores personalizados, você pode usar qualquer linguagem que ofereça suporte a primitivos HTTP. É praticamente qualquer linguagem.

Conceitos e fluxos importantes

O Azure Functions tem três conceitos centrais que são importantes de se entender:

  • Gatilhos. Um gatilho é um evento que começa a executar uma função. Exemplos de gatilhos comuns incluem solicitações HTTP, novas mensagens de fila e alterações em um banco de dados. Selecionar o gatilho correto é importante para decidir como sua função é executada.
  • Associações. Associações são códigos auxiliares que conectam sua função a outro serviço de nuvem. As associações de entrada e saída estão disponíveis para passar os dados para dentro e para fora de sua função.
  • Host do Functions. O host do Functions controla o fluxo de eventos do aplicativo. À medida que o host captura eventos, ele invoca o manipulador, e é responsável por retornar a resposta de uma função.

Veja a aparência do fluxo do início ao fim:

Diagram that shows an overview of custom handlers.

As ações a seguir descrevem como uma solicitação é processada por meio do host do Functions e de um manipulador personalizado:

  1. Quando ocorre um evento que corresponde a um gatilho (por exemplo, uma solicitação HTTP), uma solicitação é enviada ao host do Functions.
  2. O host do Functions cria um conteúdo de solicitação e a envia para o servidor Web (manipulador personalizado). O conteúdo contém informações sobre o gatilho, dados de associação de entrada, e outros metadados.
  3. A função executa sua lógica e uma resposta é enviada de volta para o host do Functions.
  4. O host do Functions passa dados de saída para a associação de saída da função para processamento.