Azure Functions - wandent/mutual-wiki GitHub Wiki
[[TOC]]
Parte de contenido proviene y es traducción libre de la documentación online. Para actualizaciones acceda a An introduction to Azure Functions
Azure Functions permiten ejecutar pequeñas piezas de codigo sin preocuparse con infraestructura de aplicaciones. Con Azure Functions la nube provee los recursos de cómputo.
Una función es disparada por un evento, como la llegada de un archivo, un mensaje un cambio en los datos.
Algunas características clave de Azure Function son:
- Aplicaciones serverless. Azure functions permitirnos desarrollar aplicaciones que no dependan de una instancias de computo en Azure, básicamente alocan dinámicamente la instancia al recurso de cómputo cuando necesario. Sin embargo, también pueden permitir que un recurso de cómputo permanezca dedicado.
- Elección de lenguaje de programación, functions permiten desarrollar en C#, Java, JavaScript, Python y PowerShell. Otras lenguajes podrán estar disponibles a futuro.
- Modelo de consumo "pay-per-use". Se pagará apenas por el costo de cómputo asociado a ejecución del código. El modelos y las tarifas podrán depender del hosting plan a elección durante la creación del recurso.
- Dependencias, Azure Functions pueden soportar dependencias de paquetes y librerías para ejecutar el código (hoy soportando NuGet y NPM)
- Seguridad. Las funciones son protegidas por disparadores http con autenticación oAuth, como Azure Active Directory. Además pueden soportar otras formas de autenticación.
- Pueden permitir grabación de informaciones de estado, través de el recurso Durable Functions.
- Open Source, el runtime es open source y disponible en GitHub.
Azure Functions son potentes para procesar datos, integración con sistemas y trabajar con integración de sensores, además para la creación de APIs y microservicios. En
En Azure Data Factory, Azure Functions pueden ser utilizadas para desarrollar procesos de código, implementando una dinámica de procesamiento de datos extensible. Pero es necesario ser cauto con el tema de escalabilidad, Azure functions nos permiten disparar un procesos a luz de un determinado evento, en un blob, Event Hub o banco de datos.
Disparadores:
-
HTTP: Ejecutar código bajo demanda por una solicitud http
-
Timer: Ejecución programada en un horario o rango de tiempo específico.
-
Azure Cosmos DB: Procesar según un determinado cambio de datos en Cosmos DB
-
Blob storage: Procesar la function según un evento de modificación / creación de un blob.
-
Queue storage: Responder a mensajes en una cola, usando Azure Storage Account queues.
-
Event Grid: Responder a eventos desde Event Grid.
-
Event Hub: Responder a eventos en Event Hubs.
-
Service Bus Queue: Conectar a otros servicios en Azure o on Premises través de mensajes de Service Bus, procesando eventos por Azure Functions.
-
Service Bus Topic
La actividad Azure Function en Data Factory permite ejecutar functions en un pipeline. Para ejecutar es necesario crear un linked service apuntando a la function, además agregando informaciones complementarias como autenticación o otras.
Azure Function Activity in Azure Data Factory
Create your first Azure Function
Azure Functions GitHub Repository