Processadores personalizados

Concluído

O Azure Functions apresenta uma variedade de tempos de execução de linguagem. Se o idioma de sua escolha não for fornecido por padrão, você poderá usar um manipulador personalizado.

O que são manipuladores personalizados?

Em sua essência, um manipulador personalizado é um servidor web. O servidor Web recebe eventos do host Functions. Em seguida, você tem a oportunidade de escrever código em seu idioma preferido para responder aos eventos.

Com manipuladores personalizados, você pode usar qualquer linguagem que ofereça suporte a primitivas HTTP. Isso é praticamente qualquer idioma.

Conceitos e fluxo importantes

O Azure Functions tem três conceitos centrais que são importantes compreender:

  • 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 certo é importante para decidir como sua função é executada.
  • Vinculações. As ligações são códigos auxiliares que ligam a sua função a outro serviço na nuvem. As ligações de entrada e saída estão disponíveis para passar dados para dentro e para fora da sua função.
  • Host de funções. O host 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 como é o fluxo do início ao fim:

Diagrama que mostra uma visão geral dos manipuladores personalizados.

As ações a seguir descrevem como uma solicitação é processada por meio do host 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 para o host Functions.
  2. O host Functions cria uma carga útil de solicitação e a envia para o servidor Web (manipulador personalizado). A carga útil contém informações sobre o gatilho, dados de ligação de entrada e outros metadados.
  3. A função executa sua lógica e uma resposta é enviada de volta para o host Functions.
  4. O host Functions passa dados de saída para a ligação de saída de uma função para processamento.