SlideShare una empresa de Scribd logo
Microsoft Summit
5 y 6 de octubre, 2016
#TechSum
#TechSum
#TechSum
SORTEAMOSSORTEAMOSSORTEAMOSSORTEAMOS
http://bit.ly/plain-go
#TechSum
http://promos.campusmvp.com/netcore/
#TechSum
#TechSum
Plantar y cosechar grano y lúpulo
Maltear el grano
Macerar el grano en agua caliente
Hervir el mosto
Añadir lúpulos varios
Enfríar el mosto lo más rápido posible
Dry hopping, fermentación y lagering
Priming y enbotellado
Amigos, Diversión y… ¡Cerveza!
#TechSum
Plantar y cosechar grano y lúpulo
Maltear el grano
Macerar el grano en agua caliente
Hervir el mosto
Añadir lúpulos varios
Enfríar el mosto lo más rápido posible
Dry hopping, fermentación y lagering
Priming y enbotellado
Amigos, Diversión y… ¡Cerveza!
#TechSum
Plantar y cosechar grano y lúpulo
Maltear el grano
Macerar el grano en agua caliente
Hervir el mosto
Añadir lúpulos varios
Enfríar el mosto lo más rápido posible
Dry hopping, fermentación y lagering
Priming y enbotellado
Amigos, Diversión y… ¡Cerveza!
#TechSum
Plantar y cosechar grano y lúpulo
Maltear el grano
Macerar el grano en agua caliente
Hervir el mosto
Añadir lúpulos varios
Enfríar el mosto lo más rápido posible
Dry hopping, fermentación y lagering
Priming y enbotellado
Amigos, Diversión y… ¡Cerveza!
#TechSum
Beer as a Service – Starter Kit
Plantar y cosechar grano y lúpulo
Maltear el grano
Macerar el grano en agua caliente
Hervir el mosto
Añadir lúpulos varios
Enfríar el mosto lo más rápido posible
Dry hopping, fermentación y lagering
Priming y enbotellado
Amigos, Diversión y… ¡Cerveza!
#TechSum
Serverless no significa que no haya servidor
Significa que no debes preocuparte por él.
Un paso más allá de PaaS
El starter kit del backend 
#TechSum
#TechSum
Azure Functions es la implementación de Azure del
paradigma de serverless backend.
Básicamente: desplegar código y que se ejecute.
Ni más, ni menos.
#TechSum
Una Azure Function es un pedazo de código que…
Se ejecuta cuando ocurre un desencadenador (trigger)
Tiene unas determinadas entradas
Genera unas determinadas salidas
#TechSum
#TechSum
Los siguientes son posibles desencadenadores de una
Azure Function
Temporizador (cada 5 min, cada Lunes, cada primero
de mes, cada martes a las 07:30)
Una llamada HTTP
Un blob almacenado
Un evento de event hub
Un elemento en una cola
#TechSum
Los siguientes elementos de Azure son posibles
entradas
(adicionales a los triggers)
Blob storage
Tablas de storage o Mobile Apps
DocumentDB
#TechSum
Los siguientes elementos son posibles salidas de
Azure Functions
HTTP (solo con desencadenador HTTP)
Blobs
Eventos de Event Hub
Colas y tablas de storage o Mobile Apps
DocumentDB
#TechSum
Permiten ejecutar una función cada cierto tiempo
El tiempo se especifica mediante una expresión cron
La función recibe un parámetro TimerInfo
#TechSum
Esto permite ejecutar una función cuando se reciba
una petición HTTP
La función recibe una URL y al invocar dicha URL se
invoca la función
Acepta un parámetro HttpResponseMessage
#TechSum
Solo está disponible si el trigger es HTTP
Esta salida es un valor de retorno:
Task<HttpResponseMessage>
A diferencia del resto de salidas que son parámetros
out
#TechSum
#TechSum
#TechSum
Una Azure Function se ubica dentro de una WebApp
Dentro del directorio wwwroot/<FunctionName>
Fichero .csx
Fichero json con la configuración de los bindings
#TechSum
Contiene la función Run que es el entry point
Podemos definir clases dentro del propio fichero csx
Pueden cargarse ficheros .csx adicionales con #load
#load “otroFichero.csx”
#load “pathotroFichero.csx”
#load “..sharedotroFichero.csx”
#TechSum
Los siguientes ensamblados están referenciados
automáticamente
mscorlib, System, System.Core
System.Xml
System.Net.Http, System.Net.Http.Formatting
System.Web.Http
Microsoft.Azure.WebJobs
Microsoft.Azure.WebJobs.Host
Microsoft.Azure.WebJobs.Extensions
#TechSum
Los siguientes ensamblados son tratados de forma
especial y se pueden referenciar directamente usando
#r “nombre”
Newtonsoft.Json
Microsoft.WindowsAzure.Storage
Microsoft.ServiceBus
Microsoft.AspNet.Webhooks.Common
Microsoft.AspNet.Webhooks.Receivers
#TechSum
Para agregar paquetes NuGet debe subirse un
project.json en la carpeta de la función
Usar #r para referenciar los paquetes por su nombre
#TechSum
Azure portal
Kudu
https://<funcapp>.scm.azurewebsites.net
FTP (WebApp)
CD a través de varios orígenes
Github, BitBucket, VSTS
Git
Dropbox, OneDrive
#TechSum
#TechSum
Azure functions es una evolución de los WebJobs
Comparten muchas cosas en común
De hecho las Azure Functions se ejecutan dentro del
contexto de una web app
Aunque eso nos importa (relativamente) poco
Las Azure Functions se ejecutan bajo el Webjob SDK2
#TechSum
Ambos tienen casi las mismas capacidades
Excepto que las Azure Functions pueden ser invocada
via HTTP
A nivel de triggers, entradas y salidas son muy
parecidos
Las Azure Functions proporcionan un nivel de
abstracción superior
#TechSum
http://aka.ms/MTS31
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a
commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS
PRESENTATION.

Más contenido relacionado

Destacado

Interfaces rest
Interfaces restInterfaces rest
Interfaces rest
Eduard Tomàs
 
5 to reportaje
5 to reportaje5 to reportaje
5 to reportaje
Eduardo Tomas
 
DotNetSpain2015: Extendiendo Visual Studio Online a través de su API
DotNetSpain2015: Extendiendo Visual Studio Online a través de su APIDotNetSpain2015: Extendiendo Visual Studio Online a través de su API
DotNetSpain2015: Extendiendo Visual Studio Online a través de su API
Roberto Luis Bisbé
 
Una visión multiplataforma con aspnet v next
Una visión multiplataforma con aspnet v nextUna visión multiplataforma con aspnet v next
Una visión multiplataforma con aspnet v next
Eduard Tomàs
 
Azure - The Good Parts
Azure - The Good PartsAzure - The Good Parts
Azure - The Good Parts
Mark Allan
 
MANUAL DE LENGUAJE DE PROGRAMACION
MANUAL DE LENGUAJE DE PROGRAMACIONMANUAL DE LENGUAJE DE PROGRAMACION
MANUAL DE LENGUAJE DE PROGRAMACION
morriz1
 
Vista aérea de los lenguajes de programación
Vista aérea de los lenguajes de programaciónVista aérea de los lenguajes de programación
Vista aérea de los lenguajes de programación
Eduard Tomàs
 
ASP.NET MVC Core
ASP.NET MVC CoreASP.NET MVC Core
ASP.NET MVC Core
Eduard Tomàs
 
Azure Functions
Azure FunctionsAzure Functions
Azure Functions
Dino Wang
 
Serverles com Azure Functions & DocumentDB
Serverles com Azure Functions & DocumentDBServerles com Azure Functions & DocumentDB
Serverles com Azure Functions & DocumentDB
José Roberto Araújo
 
An introduction to Atlassian Bitbucket Pipelines
An introduction to Atlassian Bitbucket PipelinesAn introduction to Atlassian Bitbucket Pipelines
An introduction to Atlassian Bitbucket Pipelines
Dave Clark
 
Cronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de ProgramaciónCronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de Programación
Iris Coronado
 
Introduction to Azure Functions
Introduction to Azure FunctionsIntroduction to Azure Functions
Introduction to Azure Functions
Marco Parenzan
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
Yochay Kiriaty
 
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure FunctionsChris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
ServerlessConf
 
Normalizacion de bases de datos
Normalizacion de bases de datosNormalizacion de bases de datos
Normalizacion de bases de datos
Caro_Noirgean
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic apps
Puneet Ghanshani
 
Normalización de Base de Datos
Normalización de Base de DatosNormalización de Base de Datos
Normalización de Base de Datos
Mayra Romero
 
Adapt or Die: Serverless Microservices
Adapt or Die: Serverless MicroservicesAdapt or Die: Serverless Microservices
Adapt or Die: Serverless Microservices
Apigee | Google Cloud
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datos
Sergio Sanchez
 

Destacado (20)

Interfaces rest
Interfaces restInterfaces rest
Interfaces rest
 
5 to reportaje
5 to reportaje5 to reportaje
5 to reportaje
 
DotNetSpain2015: Extendiendo Visual Studio Online a través de su API
DotNetSpain2015: Extendiendo Visual Studio Online a través de su APIDotNetSpain2015: Extendiendo Visual Studio Online a través de su API
DotNetSpain2015: Extendiendo Visual Studio Online a través de su API
 
Una visión multiplataforma con aspnet v next
Una visión multiplataforma con aspnet v nextUna visión multiplataforma con aspnet v next
Una visión multiplataforma con aspnet v next
 
Azure - The Good Parts
Azure - The Good PartsAzure - The Good Parts
Azure - The Good Parts
 
MANUAL DE LENGUAJE DE PROGRAMACION
MANUAL DE LENGUAJE DE PROGRAMACIONMANUAL DE LENGUAJE DE PROGRAMACION
MANUAL DE LENGUAJE DE PROGRAMACION
 
Vista aérea de los lenguajes de programación
Vista aérea de los lenguajes de programaciónVista aérea de los lenguajes de programación
Vista aérea de los lenguajes de programación
 
ASP.NET MVC Core
ASP.NET MVC CoreASP.NET MVC Core
ASP.NET MVC Core
 
Azure Functions
Azure FunctionsAzure Functions
Azure Functions
 
Serverles com Azure Functions & DocumentDB
Serverles com Azure Functions & DocumentDBServerles com Azure Functions & DocumentDB
Serverles com Azure Functions & DocumentDB
 
An introduction to Atlassian Bitbucket Pipelines
An introduction to Atlassian Bitbucket PipelinesAn introduction to Atlassian Bitbucket Pipelines
An introduction to Atlassian Bitbucket Pipelines
 
Cronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de ProgramaciónCronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de Programación
 
Introduction to Azure Functions
Introduction to Azure FunctionsIntroduction to Azure Functions
Introduction to Azure Functions
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
 
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure FunctionsChris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
 
Normalizacion de bases de datos
Normalizacion de bases de datosNormalizacion de bases de datos
Normalizacion de bases de datos
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic apps
 
Normalización de Base de Datos
Normalización de Base de DatosNormalización de Base de Datos
Normalización de Base de Datos
 
Adapt or Die: Serverless Microservices
Adapt or Die: Serverless MicroservicesAdapt or Die: Serverless Microservices
Adapt or Die: Serverless Microservices
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datos
 

Similar a Azure functions

FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017
Cristián Cortéz
 
¡Que lo haga otro! Automatizaciones SEO para vivir mejor
¡Que lo haga otro! Automatizaciones SEO para vivir mejor¡Que lo haga otro! Automatizaciones SEO para vivir mejor
¡Que lo haga otro! Automatizaciones SEO para vivir mejor
Iñaki Huerta (ikhuerta)
 
Cloudevel - Microsoft Azure - 101
Cloudevel - Microsoft Azure - 101Cloudevel - Microsoft Azure - 101
Cloudevel - Microsoft Azure - 101
Mauro Parra-Miranda
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
Ian Monge Pérez
 
Spring framework
Spring frameworkSpring framework
Spring framework
San Juan Guichicovi
 
Practica adicional
Practica adicionalPractica adicional
Practica adicional
AngelicaJimenezRoder
 
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
Plain Concepts
 
Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2
Ignacio Muñoz Vicente
 
Node.js - Eventos para Todos
Node.js - Eventos para TodosNode.js - Eventos para Todos
Node.js - Eventos para Todos
Mariano Iglesias
 
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayerCodemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
Iván López Martín
 
Microservicios sobre MEAN Stack
Microservicios sobre MEAN StackMicroservicios sobre MEAN Stack
Microservicios sobre MEAN Stack
Pedro J. Molina
 
Opensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN StackOpensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN Stack
Pedro J. Molina
 
La biblia del foot printing
La biblia del foot printingLa biblia del foot printing
La biblia del foot printing
Germán López Tilmans
 
Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2
Asier Marqués
 
Workshop calabash appium
Workshop calabash appiumWorkshop calabash appium
Workshop calabash appium
Enrique Sánchez-Bayuela
 
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-SourceWeb-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
senado-web-clon
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
Dani Latorre
 
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
Fabian Imaz
 
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
atSistemas
 
Una introducción a la Integración continua
Una introducción a la Integración continuaUna introducción a la Integración continua
Una introducción a la Integración continua
Ernesto Cardenas Cangahuala
 

Similar a Azure functions (20)

FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017
 
¡Que lo haga otro! Automatizaciones SEO para vivir mejor
¡Que lo haga otro! Automatizaciones SEO para vivir mejor¡Que lo haga otro! Automatizaciones SEO para vivir mejor
¡Que lo haga otro! Automatizaciones SEO para vivir mejor
 
Cloudevel - Microsoft Azure - 101
Cloudevel - Microsoft Azure - 101Cloudevel - Microsoft Azure - 101
Cloudevel - Microsoft Azure - 101
 
Mootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JSMootools Y Otros Frameworks JS
Mootools Y Otros Frameworks JS
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Practica adicional
Practica adicionalPractica adicional
Practica adicional
 
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
DotNet 2019 | Pablo Santos Luaces - Como migrar un producto multiplataforma a...
 
Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2Desarrollo de aplicaciones multiplataforma 1/2
Desarrollo de aplicaciones multiplataforma 1/2
 
Node.js - Eventos para Todos
Node.js - Eventos para TodosNode.js - Eventos para Todos
Node.js - Eventos para Todos
 
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayerCodemotion 2013 - Quiero tiempo real y lo quiero para ayer
Codemotion 2013 - Quiero tiempo real y lo quiero para ayer
 
Microservicios sobre MEAN Stack
Microservicios sobre MEAN StackMicroservicios sobre MEAN Stack
Microservicios sobre MEAN Stack
 
Opensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN StackOpensouthcode: Microservicios sobre MEAN Stack
Opensouthcode: Microservicios sobre MEAN Stack
 
La biblia del foot printing
La biblia del foot printingLa biblia del foot printing
La biblia del foot printing
 
Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2
 
Workshop calabash appium
Workshop calabash appiumWorkshop calabash appium
Workshop calabash appium
 
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-SourceWeb-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
Web-alternativa-al-Senado-de-Espana-desarrollada-Open-Source
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
 
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
¿Es posible extender a SharePoint 2013? Probablemente en más de una forma…
 
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
Meetup En mi local funciona - Serverless... ¡en local! con Serverless Framewo...
 
Una introducción a la Integración continua
Una introducción a la Integración continuaUna introducción a la Integración continua
Una introducción a la Integración continua
 

Más de Eduard Tomàs

Kubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why'sKubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why's
Eduard Tomàs
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
Eduard Tomàs
 
Escalando workloads serverless en Kubernetes con Keda
Escalando workloads serverless en Kubernetes con KedaEscalando workloads serverless en Kubernetes con Keda
Escalando workloads serverless en Kubernetes con Keda
Eduard Tomàs
 
C#9 - Más C# que nunca
C#9 - Más C# que nuncaC#9 - Más C# que nunca
C#9 - Más C# que nunca
Eduard Tomàs
 
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDACollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
Eduard Tomàs
 
Keda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en ServerlessKeda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en Serverless
Eduard Tomàs
 
.NET Memoria y Rendimiento
.NET Memoria y Rendimiento.NET Memoria y Rendimiento
.NET Memoria y Rendimiento
Eduard Tomàs
 
Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)
Eduard Tomàs
 
Esos contenedores, ¡a producción! (Commit Conf 2018)
Esos contenedores, ¡a producción! (Commit Conf 2018)Esos contenedores, ¡a producción! (Commit Conf 2018)
Esos contenedores, ¡a producción! (Commit Conf 2018)
Eduard Tomàs
 
Codemotion 2015 - Bienvenido de nuevo c++
Codemotion 2015 - Bienvenido de nuevo c++Codemotion 2015 - Bienvenido de nuevo c++
Codemotion 2015 - Bienvenido de nuevo c++
Eduard Tomàs
 
El "peor" lenguaje del mundo
El "peor" lenguaje del mundoEl "peor" lenguaje del mundo
El "peor" lenguaje del mundo
Eduard Tomàs
 
Containerize a netcore application with aks
 Containerize a netcore application with aks Containerize a netcore application with aks
Containerize a netcore application with aks
Eduard Tomàs
 
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
Eduard Tomàs
 
Aplicaciones de consola fáciles? Más quisieramos
Aplicaciones de consola fáciles? Más quisieramosAplicaciones de consola fáciles? Más quisieramos
Aplicaciones de consola fáciles? Más quisieramos
Eduard Tomàs
 
Serverless with Azure Functions and CosmosDb
Serverless with Azure Functions and CosmosDbServerless with Azure Functions and CosmosDb
Serverless with Azure Functions and CosmosDb
Eduard Tomàs
 
Docker y todo eso... más o menos
Docker y todo eso... más o menosDocker y todo eso... más o menos
Docker y todo eso... más o menos
Eduard Tomàs
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?
Eduard Tomàs
 
React native - Unleash the power of your device
React native - Unleash the power of your deviceReact native - Unleash the power of your device
React native - Unleash the power of your device
Eduard Tomàs
 
JavaScript in 2016 (Codemotion Rome)
JavaScript in 2016 (Codemotion Rome)JavaScript in 2016 (Codemotion Rome)
JavaScript in 2016 (Codemotion Rome)
Eduard Tomàs
 
Asp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep DiveAsp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep Dive
Eduard Tomàs
 

Más de Eduard Tomàs (20)

Kubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why'sKubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why's
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
 
Escalando workloads serverless en Kubernetes con Keda
Escalando workloads serverless en Kubernetes con KedaEscalando workloads serverless en Kubernetes con Keda
Escalando workloads serverless en Kubernetes con Keda
 
C#9 - Más C# que nunca
C#9 - Más C# que nuncaC#9 - Más C# que nunca
C#9 - Más C# que nunca
 
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDACollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
CollabDays 2020 Barcelona - Serverless Kubernetes with KEDA
 
Keda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en ServerlessKeda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en Serverless
 
.NET Memoria y Rendimiento
.NET Memoria y Rendimiento.NET Memoria y Rendimiento
.NET Memoria y Rendimiento
 
Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)
 
Esos contenedores, ¡a producción! (Commit Conf 2018)
Esos contenedores, ¡a producción! (Commit Conf 2018)Esos contenedores, ¡a producción! (Commit Conf 2018)
Esos contenedores, ¡a producción! (Commit Conf 2018)
 
Codemotion 2015 - Bienvenido de nuevo c++
Codemotion 2015 - Bienvenido de nuevo c++Codemotion 2015 - Bienvenido de nuevo c++
Codemotion 2015 - Bienvenido de nuevo c++
 
El "peor" lenguaje del mundo
El "peor" lenguaje del mundoEl "peor" lenguaje del mundo
El "peor" lenguaje del mundo
 
Containerize a netcore application with aks
 Containerize a netcore application with aks Containerize a netcore application with aks
Containerize a netcore application with aks
 
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
Escenarios avanzados en AKS (Global Azure Bootcamp Barcelona 2019)
 
Aplicaciones de consola fáciles? Más quisieramos
Aplicaciones de consola fáciles? Más quisieramosAplicaciones de consola fáciles? Más quisieramos
Aplicaciones de consola fáciles? Más quisieramos
 
Serverless with Azure Functions and CosmosDb
Serverless with Azure Functions and CosmosDbServerless with Azure Functions and CosmosDb
Serverless with Azure Functions and CosmosDb
 
Docker y todo eso... más o menos
Docker y todo eso... más o menosDocker y todo eso... más o menos
Docker y todo eso... más o menos
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?
 
React native - Unleash the power of your device
React native - Unleash the power of your deviceReact native - Unleash the power of your device
React native - Unleash the power of your device
 
JavaScript in 2016 (Codemotion Rome)
JavaScript in 2016 (Codemotion Rome)JavaScript in 2016 (Codemotion Rome)
JavaScript in 2016 (Codemotion Rome)
 
Asp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep DiveAsp.Net Core 1.0 Deep Dive
Asp.Net Core 1.0 Deep Dive
 

Azure functions

  • 1. Microsoft Summit 5 y 6 de octubre, 2016 #TechSum
  • 6. #TechSum Plantar y cosechar grano y lúpulo Maltear el grano Macerar el grano en agua caliente Hervir el mosto Añadir lúpulos varios Enfríar el mosto lo más rápido posible Dry hopping, fermentación y lagering Priming y enbotellado Amigos, Diversión y… ¡Cerveza!
  • 7. #TechSum Plantar y cosechar grano y lúpulo Maltear el grano Macerar el grano en agua caliente Hervir el mosto Añadir lúpulos varios Enfríar el mosto lo más rápido posible Dry hopping, fermentación y lagering Priming y enbotellado Amigos, Diversión y… ¡Cerveza!
  • 8. #TechSum Plantar y cosechar grano y lúpulo Maltear el grano Macerar el grano en agua caliente Hervir el mosto Añadir lúpulos varios Enfríar el mosto lo más rápido posible Dry hopping, fermentación y lagering Priming y enbotellado Amigos, Diversión y… ¡Cerveza!
  • 9. #TechSum Plantar y cosechar grano y lúpulo Maltear el grano Macerar el grano en agua caliente Hervir el mosto Añadir lúpulos varios Enfríar el mosto lo más rápido posible Dry hopping, fermentación y lagering Priming y enbotellado Amigos, Diversión y… ¡Cerveza!
  • 10. #TechSum Beer as a Service – Starter Kit Plantar y cosechar grano y lúpulo Maltear el grano Macerar el grano en agua caliente Hervir el mosto Añadir lúpulos varios Enfríar el mosto lo más rápido posible Dry hopping, fermentación y lagering Priming y enbotellado Amigos, Diversión y… ¡Cerveza!
  • 11. #TechSum Serverless no significa que no haya servidor Significa que no debes preocuparte por él. Un paso más allá de PaaS El starter kit del backend 
  • 13. #TechSum Azure Functions es la implementación de Azure del paradigma de serverless backend. Básicamente: desplegar código y que se ejecute. Ni más, ni menos.
  • 14. #TechSum Una Azure Function es un pedazo de código que… Se ejecuta cuando ocurre un desencadenador (trigger) Tiene unas determinadas entradas Genera unas determinadas salidas
  • 16. #TechSum Los siguientes son posibles desencadenadores de una Azure Function Temporizador (cada 5 min, cada Lunes, cada primero de mes, cada martes a las 07:30) Una llamada HTTP Un blob almacenado Un evento de event hub Un elemento en una cola
  • 17. #TechSum Los siguientes elementos de Azure son posibles entradas (adicionales a los triggers) Blob storage Tablas de storage o Mobile Apps DocumentDB
  • 18. #TechSum Los siguientes elementos son posibles salidas de Azure Functions HTTP (solo con desencadenador HTTP) Blobs Eventos de Event Hub Colas y tablas de storage o Mobile Apps DocumentDB
  • 19. #TechSum Permiten ejecutar una función cada cierto tiempo El tiempo se especifica mediante una expresión cron La función recibe un parámetro TimerInfo
  • 20. #TechSum Esto permite ejecutar una función cuando se reciba una petición HTTP La función recibe una URL y al invocar dicha URL se invoca la función Acepta un parámetro HttpResponseMessage
  • 21. #TechSum Solo está disponible si el trigger es HTTP Esta salida es un valor de retorno: Task<HttpResponseMessage> A diferencia del resto de salidas que son parámetros out
  • 24. #TechSum Una Azure Function se ubica dentro de una WebApp Dentro del directorio wwwroot/<FunctionName> Fichero .csx Fichero json con la configuración de los bindings
  • 25. #TechSum Contiene la función Run que es el entry point Podemos definir clases dentro del propio fichero csx Pueden cargarse ficheros .csx adicionales con #load #load “otroFichero.csx” #load “pathotroFichero.csx” #load “..sharedotroFichero.csx”
  • 26. #TechSum Los siguientes ensamblados están referenciados automáticamente mscorlib, System, System.Core System.Xml System.Net.Http, System.Net.Http.Formatting System.Web.Http Microsoft.Azure.WebJobs Microsoft.Azure.WebJobs.Host Microsoft.Azure.WebJobs.Extensions
  • 27. #TechSum Los siguientes ensamblados son tratados de forma especial y se pueden referenciar directamente usando #r “nombre” Newtonsoft.Json Microsoft.WindowsAzure.Storage Microsoft.ServiceBus Microsoft.AspNet.Webhooks.Common Microsoft.AspNet.Webhooks.Receivers
  • 28. #TechSum Para agregar paquetes NuGet debe subirse un project.json en la carpeta de la función Usar #r para referenciar los paquetes por su nombre
  • 29. #TechSum Azure portal Kudu https://<funcapp>.scm.azurewebsites.net FTP (WebApp) CD a través de varios orígenes Github, BitBucket, VSTS Git Dropbox, OneDrive
  • 31. #TechSum Azure functions es una evolución de los WebJobs Comparten muchas cosas en común De hecho las Azure Functions se ejecutan dentro del contexto de una web app Aunque eso nos importa (relativamente) poco Las Azure Functions se ejecutan bajo el Webjob SDK2
  • 32. #TechSum Ambos tienen casi las mismas capacidades Excepto que las Azure Functions pueden ser invocada via HTTP A nivel de triggers, entradas y salidas son muy parecidos Las Azure Functions proporcionan un nivel de abstracción superior
  • 34. © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Notas del editor

  1. Para entrar en los dos primeros sorteos los usuarios tienen que registrase en la web de plainconceptsgo leyendo el QR, para cazar a un speaker de Plain tendrán que leer el QR correspondiente. Para entrar en el sorteo del dron tienen que ir al stand y acertar todas las preguntas del test