Uma introdução às Funções do AzureAn introduction to Azure Functions

Funções do Azure é uma solução para uma fácil execução de pequenos blocos de código, ou "funções", na nuvem.Azure Functions is a solution for easily running small pieces of code, or "functions," in the cloud. É possível escrever apenas o código que necessita para o problema em questão, sem ter de se preocupar com toda a aplicação ou a infraestrutura para executá-la.You can write just the code you need for the problem at hand, without worrying about a whole application or the infrastructure to run it. As funções podem tornar o desenvolvimento ainda mais produtivo e você pode usar a linguagem de desenvolvimento de sua escolha C#, como Java, JavaScript, PowerShell e Python.Functions can make development even more productive, and you can use your development language of choice, such as C#, Java, JavaScript, PowerShell, and Python. Paga apenas para a hora que o seu código é executado e confie no Azure para dimensionar conforme necessário.Pay only for the time your code runs and trust Azure to scale as needed. As Funções do Azure permitem desenvolver aplicações sem servidor no Microsoft Azure.Azure Functions lets you develop serverless applications on Microsoft Azure.

Este tópico fornece uma descrição geral de alto nível das Funções do Azure.This topic provides a high-level overview of Azure Functions. Se quiser iniciar de imediato e utilizar as Funções, comece por Criar a sua primeira Função do Azure.If you want to jump right in and get started with Functions, start with Create your first Azure Function. Se estiver à procura de mais informações técnicas acerca das Funções, consulte a referência para programadores.If you are looking for more technical information about Functions, see the developer reference.

FuncionalidadesFeatures

Seguem-se algumas funcionalidades-chave das Funções:Here are some key features of Functions:

  • Opção de linguagem – escreva funções usando sua escolha C#, Java, JavaScript, Python e outras linguagens.Choice of language - Write functions using your choice of C#, Java, Javascript, Python, and other languages. Consulte idiomas com suporte para obter a lista completa.See Supported languages for the complete list.
  • Modelo de preços de pagamento por utilização - Pague apenas o tempo despendido a executar o seu código.Pay-per-use pricing model - Pay only for the time spent running your code. Veja a opção do plano de alojamento de Consumo na secção preços.See the Consumption hosting plan option in the pricing section.
  • Traga as suas próprias dependências - As funções são compatíveis com NuGet e NPM, pelo que pode utilizar as suas bibliotecas favoritas.Bring your own dependencies - Functions supports NuGet and NPM, so you can use your favorite libraries.
  • Segurança integrada - Proteja as funções acionadas por HTTP com fornecedores de OAuth, como o Azure Active Directory, Facebook, Google, Twitter e Conta Microsoft.Integrated security - Protect HTTP-triggered functions with OAuth providers such as Azure Active Directory, Facebook, Google, Twitter, and Microsoft Account.
  • Integração simplificada - Tire facilmente partido dos serviços do Azure e ofertas de software como serviço (SaaS).Simplified integration - Easily leverage Azure services and software-as-a-service (SaaS) offerings. Consulte a secção Integrações para obter alguns exemplos.See the integrations section for some examples.
  • Desenvolvimento flexível – codifique as suas funções diretamente no portal ou configure a integração contínua e implemente o seu código através do GitHub, dos Serviços de DevOps do Azure e de outras ferramentas de programação suportadas.Flexible development - Code your functions right in the portal or set up continuous integration and deploy your code through GitHub, Azure DevOps Services, and other supported development tools.
  • Código aberto - O tempo de execução das Funções é de código aberto e está disponível no GitHub.Open-source - The Functions runtime is open-source and available on GitHub.

O que posso fazer com as Funções?What can I do with Functions?

Funções é uma excelente solução para processar dados, integrar sistemas, trabalhar com a Internet das Coisas (IoT) e a criação de API simples e micro-serviços.Functions is a great solution for processing data, integrating systems, working with the internet-of-things (IoT), and building simple APIs and microservices. Considere utilizar as Funções para tarefas como processamento de imagem ou encomendas, manutenção de ficheiros ou para quaisquer tarefas que pretende executar com base numa agenda.Consider Functions for tasks like image or order processing, file maintenance, or for any tasks that you want to run on a schedule.

Funções fornece modelos para ajudar a começar com cenários-chave, que incluem:Functions provides templates to get you started with key scenarios, including the following:

  • HTTPTrigger - Acionar a execução do seu código através da utilização de um pedido de HTTP.HTTPTrigger - Trigger the execution of your code by using an HTTP request. Por exemplo, veja Create your first function (Criar a sua primeira função).For an example, see Create your first function.
  • TimerTrigger - Executar tarefas de limpeza ou outras tarefas de lote numa agenda predefinida.TimerTrigger - Execute cleanup or other batch tasks on a predefined schedule. Por exemplo, veja Create a function triggered by a timer (Criar uma função acionada por um temporizador).For an example, see Create a function triggered by a timer.
  • CosmosDBTrigger - Processar documentos do Azure Cosmos DB quando são adicionados ou atualizados em coleções numa base de dados NoSQL.CosmosDBTrigger - Process Azure Cosmos DB documents when they are added or updated in collections in a NoSQL database. Para obter mais informações, veja Enlaces do Azure Cosmos DB.For more information, see Azure Cosmos DB bindings.
  • BlobTrigger - Processa blobs de armazenamento do Azure quando são adicionados a contentores.BlobTrigger - Process Azure Storage blobs when they are added to containers. Pode utilizar esta função para redimensionar a imagem.You might use this function for image resizing. Para obter mais informações, veja Blob storage bindings (Enlaces de armazenamento de blobs).For more information, see Blob storage bindings.
  • QueueTrigger - Responder a mensagens à medida que chegam a uma fila de Armazenamento do Azure.QueueTrigger - Respond to messages as they arrive in an Azure Storage queue. Para obter mais informações, veja Enlaces do Armazenamento de filas do Azure.For more information, see Azure Queue storage bindings.
  • EventGridTrigger – Responder a eventos fornecidos a uma subscrição no Azure Event Grid.EventGridTrigger - Respond to events delivered to a subscription in Azure Event Grid. Suporta um modelo com base na subscrição para receber eventos, incluindo a filtragem.Supports a subscription-based model for receiving events, which includes filtering. Uma boa solução para a criação de arquiteturas baseadas em eventos.A good solution for building event-based architectures. Para obter um exemplo, veja Automatizar o redimensionamento de imagens carregadas com o Event Grid.For an example, see Automate resizing uploaded images using Event Grid.
  • EventHubTrigger - Responder a eventos fornecidos a um Hub de Eventos do Azure.EventHubTrigger - Respond to events delivered to an Azure Event Hub. Particularmente útil na instrumentação do aplicativo, na experiência do usuário ou no processamento de fluxo de trabalho e nos cenários de IoT (Internet das coisas).Particularly useful in application instrumentation, user experience or workflow processing, and internet-of-things (IoT) scenarios. Para obter mais informações, veja Event Hubs bindings (Enlaces de Hubs de Eventos).For more information, see Event Hubs bindings.
  • ServiceBusQueueTrigger - Ligar o seu código a outros serviços do Azure ou serviços no local através da escuta de filas de mensagens.ServiceBusQueueTrigger - Connect your code to other Azure services or on-premises services by listening to message queues. Para obter mais informações, veja Service Bus bindings (Enlaces do Service Bus).For more information, see Service Bus bindings.
  • ServiceBusQueueTrigger - Ligar o seu código a outros serviços do Azure ou serviços no local através da subscrição de tópicos.ServiceBusTopicTrigger - Connect your code to other Azure services or on-premises services by subscribing to topics. Para obter mais informações, veja Service Bus bindings (Enlaces do Service Bus).For more information, see Service Bus bindings.

Funções do Azure suporta acionadores, que são formas de iniciar a execução do seu código, e enlaces, que são formas para simplificar a codificação de dados de entrada e saída.Azure Functions supports triggers, which are ways to start execution of your code, and bindings, which are ways to simplify coding for input and output data. Para obter uma descrição detalhada dos acionadores e enlaces fornecidos pelas Funções do Azure, consulte o artigo Referência para programadores de acionadores e enlaces das Funções do Azure.For a detailed description of the triggers and bindings that Azure Functions provides, see Azure Functions triggers and bindings developer reference.

ntegraçõesIntegrations

Funções do Azure integra-se com vários serviços do Azure e de terceiros.Azure Functions integrates with various Azure and 3rd-party services. Estes serviços podem acionar a sua função e iniciar a execução ou podem servir como entrada e saída para o seu código.These services can trigger your function and start execution, or they can serve as input and output for your code. As Funções do Azure são compatíveis com as seguintes integrações de serviço:The following service integrations are supported by Azure Functions:

  • Azure Cosmos DBAzure Cosmos DB
  • Azure Event HubsAzure Event Hubs
  • Azure Event GridAzure Event Grid
  • Hubs de Notificação do AzureAzure Notification Hubs
  • Azure Service Bus (filas e tópicos)Azure Service Bus (queues and topics)
  • Armazenamento do Azure (blob, filas e tabelas)Azure Storage (blob, queues, and tables)
  • No local (utilizando o Service Bus)On-premises (using Service Bus)
  • Twilio (mensagens SMS)Twilio (SMS messages)

Quanto custam as Funções?How much does Functions cost?

As Funções do Azure têm dois tipos de planos de preços.Azure Functions has two kinds of pricing plans. Escolha o que melhor se adequa às suas necessidades:Choose the one that best fits your needs:

  • Plano de Consumo - Quando a função é executada, o Azure fornece todos os recursos informáticos necessários.Consumption plan - When your function runs, Azure provides all of the necessary computational resources. Não tem de se preocupar com a gestão de recursos, paga apenas o tempo de execução do seu código.You don't have to worry about resource management, and you only pay for the time that your code runs.
  • Plano do Serviço de Aplicações – Executar as funções como aplicações da Web.App Service plan - Run your functions just like your web apps. Se já utilizar o App Service para outras aplicações, pode executar as suas funções no mesmo plano sem custos adicionais.When you are already using App Service for your other applications, you can run your functions on the same plan at no additional cost.

Para obter mais informações sobre os planos de alojamento, veja Azure Functions hosting plan comparison (Comparação do plano de alojamento das Funções do Azure).For more information about hosting plans, see Azure Functions hosting plan comparison. Os detalhes completos sobre os preços estão disponíveis na Preços das Funções.Full pricing details are available on the Functions Pricing page.

Próximos PassosNext Steps