Azure Function – Parte 2: Publicando o micro-serviço

Por Felipe Rabello|
Atualizado: Jul 2023 |
Publicado: Out 2017

O Azure Functions é um serviço provisionado na nuvem. Para criar um novo serviço acesse o Portal e adicione uma nova instância do Functions, escolha o HttpTrigger como tipo da função. Dentro do Functions adicione uma nova função, existem serviços beta de Proxy e Slots, mas não abordaremos eles neste artigo. 

Dois arquivos já são criados automaticamente:

  • run.csx: contém o script propriamente dito;
  • function.json: metadados do script.

O function.json é um array de bindings, junto com uma propriedade enabled, que habilita ou desabilita a função.

function.json
function.json

 

Todos os bindings compartilham algumas propriedades:

PropriedadeValoresComentários
typestringTipo de binding, por exemplo: queueTrigger.
direction‘in’, ‘out’Indica se o valor é de entrada ou de saída.
namestringNome que será atribuído ao binding. No C# torna-se o valor da variável e no Javascript uma estrutura de chave/valor

Fonte

Ao criar uma nova function, ela já vem com um código de exemplo pronta para rodar. A princípio é necessário apenas alterar o run.csx com seu script, porém muitas vezes utilizamos pacotes de terceiros, utilizando NuGets.

Os pacotes abaixo já estão incluídos na solução da Azure:

  • mscorlib
  • System
  • System.Core
  • System.Xml
  • System.Net.Http
  • Microsoft.Azure.WebJobs
  • Microsoft.Azure.WebJobs.Host
  • Microsoft.Azure.WebJobs.Extensions
  • System.Web.Http
  • System.Net.Http.Formatting

Caso seja necessário adicionar outros pacotes é necessário criar um arquivo chamado project.json, este arquivo conterá as informações dos pacotes adicionais que serão instalados no momento do build da solução.

O Azure Function automaticamente percebe alterações neste arquivo e executa o NuGet restore antes do próximo build.

Exemplo de formatação do project.json:

project.json

Configurados os metadados e as dependências o script já está pronto para rodar na nuvem. Para facilitar os testes a Azure tem a funcionalidade de fazer as chamadas pela plataforma. 

Vale ressaltar que neste artigo abordamos um Function que tem como gatilho uma requisição HTTP mas é possível configurar outros tipos de gatilho, como por exemplo: funções agendadas, vinculadas a eventos do CosmosDB, ao GitHub entre outros.

Quer saber mais?

Desenvolvimento de Software

Confira outros artigos

WhatsApp Business na sua estratégia: muito além de um chatbot

Podemos dizer adeus a conversas monótonas com chatbots limitados e sem personalidade. Daqui em diante, veremos interfaces conversacionais oferecendo experiências digitais cada vez mais sofisticadas. Em outro artigo, abordamos como mais experiências estão sendo convertidas, progressivamente, em conversas e como essa tendência é potencializada pelos avanços nos modelos de Inteligência Artificial e nos canais de […]

Desenvolvimento de Software

inteligencia-artificial-ia-como-otimizacao-para-grandes-empresas

A Inteligência Artificial (IA) e otimização operacional nas empresas

Sumário1 Como a Inteligência Artificial (IA) pode otimizar operações empresariais e aumentar a eficiência? Descubra aqui!  2 Automatização de tarefas repetitivas e demoradas 2.1 Exemplos de IA para economia de tempo2.2 10 exemplos de como utilizar a Inteligência Artificial (IA) para automatizar tarefas repetitivas e/ou demoradas: 3 Melhoria da eficiência e redução de custos com Inteligência Artificial (IA)3.1 […]

Desenvolvimento de Software

Desenvolvimento Android e iOS

Desenvolvimento Android x iOS: 10 recomendações para o desenvolvimento produtivo

Entre agosto de 2022 e junho de 2023, o mercado de aplicativos móveis experimentou um crescimento notável, projetando um aumento anual de 13,4% até 2030, alcançando um mercado estimado em US$ 187,58 bilhões. E, certamente, a tendência é que essa expansão continue exponencialmente nos próximos anos.  Portanto, agora é a hora de explorar as oportunidades […]

Desenvolvimento de Software

Veja outros artigos de Desenvolvimento de Software