El documento describe los pasos para hacer cerveza artesanal: 1) plantar y cosechar grano y lúpulo, 2) maltear el grano, 3) macerar el grano en agua caliente, 4) hervir el mosto, 5) añadir lúpulos, 6) enfriar el mosto rápidamente, 7) fermentación y envasado, 8) compartir la cerveza con amigos. También incluye información sobre la conferencia Microsoft Summit de octubre de 2016 y sobre Azure Functions.
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
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
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