SlideShare a Scribd company logo
Azure Functions Deep Dive
Giorgio Di Nardo
ROME 24-25 MARCH 2017
ROME 24-25 MARCH 2017
Chi sono?
 Software Architect
@ Proge-Software
 Fondatore
@ DomusDotNet
 Collaboratore
@ GetLatestVersion
 akelitz@hotmail.com
 blog.ugidotnet.org/akelitz
 @akelitz
ROME 24-25 MARCH 2017
Serverless computing… cioè?
Il Serveless computing (anche detto
Function as a Service o FaaS) è un
modello di esecuzione del codice su
cloud, nel quale l’esistenza dei server
è del tutto nascosta ed è il cloud
provider che si occupa della gestione
del contenitore PaaS richiesto per
l’esecuzione dello stesso
ROME 24-25 MARCH 2017
Cosa sono le Azure Functions?
Azure Functions is an event driven,
compute-on-demand experience that
extends the existing Azure application
platform with capabilities to
implement code triggered by events
occurring in Azure or third party
service as well as on-premises
systems.
ROME 24-25 MARCH 2017
In breve: eventi + codice
C#,JS,…
Richiesta HTTP
Schedulazione
Dati (Queue, ecc.)
ROME 24-25 MARCH 2017
Vantaggi
 Sviluppo RAD
 Portale/CLI/Visual Studio
 Zero boilerplate = focus sui requisiti utente
 Si basa su Web App
 Addio infrastruttura
 Modelli di costi flessibile
 Pay-per-use o Piano App Service
ROME 24-25 MARCH 2017
Costi
 A consumo
 In un piano App Service esistente
https://azure.microsoft.com/it-it/pricing/details/functions/
Costo Quota gratis
Risorse €0,000014/GB-s 400.000 GB-s
Esecuzioni €0,169/M 1 M
ROME 24-25 MARCH 2017
Scenari d’utilizzo
 Gestione di processi automatici
 Integrazione con sistemi esterni
 Scomposizione di applicativi monolitici
esistenti
 Sviluppo di applicazioni che richiedono
scalabilità indipendente delle componenti
 SPA/Mobile con CQRS ed Event Sourcing
ROME 24-25 MARCH 2017
Demo
La prima Function non si scorda mai
ROME 24-25 MARCH 2017
Non finisce qui!
 Debugging
 Sia in localhost che su cloud con Visual Studio
 CORS
 Configurabile sul portale con un click
 Autorizzazioni
 Supporta AAD e 3rd party via Web App
 Monitoraggio
 Real-time e Storico sul portale o via Kudu
ROME 24-25 MARCH 2017
Demo
Live Event Stream
ROME 24-25 MARCH 2017
Risorse utili
 Documentazione
 http://functions.azure.com
 https://docs.microsoft.com/en-us/azure/azure-functions/
 https://github.com/markheath/azure-functions-links
 Codice @ GitHub
 https://github.com/Azure?utf8=%E2%9C%93&q=functions&t
ype=&language=
 Corsi @ Pluralsight
 Azure Functions Fundamentals
 Azure Function Triggers Quick Start
ROME 24-25 MARCH 2017
Grazie per l’attenzione
 Software Architect
@ Proge-Software
 Fondatore
@ DomusDotNet
 Collaboratore
@ GetLatestVersion
 akelitz@hotmail.com
 blog.ugidotnet.org/akelitz
 @akelitz

More Related Content

What's hot

Christmas greetings cards with blazor
Christmas greetings cards with blazorChristmas greetings cards with blazor
Christmas greetings cards with blazor
Nicolò Carandini
 
UI Composition - Prism
UI Composition - PrismUI Composition - Prism
UI Composition - Prism
DotNetMarche
 
Spa with Blazor
Spa with BlazorSpa with Blazor
Spa with Blazor
Nicolò Carandini
 
IBM Bluemix @Codemotion
IBM Bluemix @CodemotionIBM Bluemix @Codemotion
IBM Bluemix @Codemotion
Roberto Pozzi
 
Nat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazioneNat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazione
Giuliano Latini
 
Monitoring Applications in AKS
Monitoring Applications in AKSMonitoring Applications in AKS
Monitoring Applications in AKS
Giuliano Latini
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018
Fabrizio Bernabei
 
Progettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web DesignProgettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web Design
Salvatore Paone
 
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Codemotion
 
Introduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor ModelIntroduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor Model
Andrea Tosato
 
Real Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in ProductionReal Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in Production
Codemotion
 
ARCHITETTURA DI UN'APPLICAZIONE SCALABILE
ARCHITETTURA DI UN'APPLICAZIONE SCALABILEARCHITETTURA DI UN'APPLICAZIONE SCALABILE
ARCHITETTURA DI UN'APPLICAZIONE SCALABILE
DotNetCampus
 
Microsoft Fast - Overview
Microsoft Fast - OverviewMicrosoft Fast - Overview
Microsoft Fast - Overview
Francesco Sciuti
 
ASP.NET performance optimization
ASP.NET performance optimizationASP.NET performance optimization
ASP.NET performance optimization
Andrea Dottor
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
dotnetcode
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App Service
Andrea Dottor
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with Kubernetes
Giulio Roggero
 
Building infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdkBuilding infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdk
Andrea Valentini
 
Introduzione a Docker
Introduzione a DockerIntroduzione a Docker
Introduzione a Docker
Antonio Di Motta
 
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
Andrea Balducci
 

What's hot (20)

Christmas greetings cards with blazor
Christmas greetings cards with blazorChristmas greetings cards with blazor
Christmas greetings cards with blazor
 
UI Composition - Prism
UI Composition - PrismUI Composition - Prism
UI Composition - Prism
 
Spa with Blazor
Spa with BlazorSpa with Blazor
Spa with Blazor
 
IBM Bluemix @Codemotion
IBM Bluemix @CodemotionIBM Bluemix @Codemotion
IBM Bluemix @Codemotion
 
Nat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazioneNat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazione
 
Monitoring Applications in AKS
Monitoring Applications in AKSMonitoring Applications in AKS
Monitoring Applications in AKS
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018
 
Progettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web DesignProgettare in Team per il Responsive Web Design
Progettare in Team per il Responsive Web Design
 
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
 
Introduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor ModelIntroduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor Model
 
Real Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in ProductionReal Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in Production
 
ARCHITETTURA DI UN'APPLICAZIONE SCALABILE
ARCHITETTURA DI UN'APPLICAZIONE SCALABILEARCHITETTURA DI UN'APPLICAZIONE SCALABILE
ARCHITETTURA DI UN'APPLICAZIONE SCALABILE
 
Microsoft Fast - Overview
Microsoft Fast - OverviewMicrosoft Fast - Overview
Microsoft Fast - Overview
 
ASP.NET performance optimization
ASP.NET performance optimizationASP.NET performance optimization
ASP.NET performance optimization
 
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App Service
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with Kubernetes
 
Building infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdkBuilding infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdk
 
Introduzione a Docker
Introduzione a DockerIntroduzione a Docker
Introduzione a Docker
 
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
[Alam aeki] Guida illustrata alla modellazione di un dominio con Event Sourci...
 

Similar to Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017

Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)
Herzum Italia
 
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
Marco Parenzan
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
Daniele Mondello
 
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
Jürgen Ambrosi
 
OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016
Gaetano Paternò
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?
Andrea Carratta
 
Pensiero Analogico e Microservizi
Pensiero Analogico  e MicroserviziPensiero Analogico  e Microservizi
Pensiero Analogico e Microservizi
Consulthinkspa
 
Azure functions
Azure functionsAzure functions
Azure functions
Andrea Tosato
 
Laboratori virtuali
Laboratori virtualiLaboratori virtuali
Laboratori virtuali
Jürgen Ambrosi
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...Emanuele Della Valle
 
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Roberto Albano
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
Nicolò Carandini
 
Crui cloud computing solution for university campus
Crui   cloud computing solution for university campusCrui   cloud computing solution for university campus
Crui cloud computing solution for university campus
Jürgen Ambrosi
 
Cost Optimization - Global Azure Bootcamp 2019
Cost Optimization - Global Azure Bootcamp 2019Cost Optimization - Global Azure Bootcamp 2019
Cost Optimization - Global Azure Bootcamp 2019
Andrea Tosato
 
Machine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devopsMachine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devops
Igor Antonacci
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
Davide Benvegnù
 
Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentials
antimo musone
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloud
Davide Benvegnù
 
Il mercato SOA: futuro e prospettive
Il mercato SOA: futuro e prospettiveIl mercato SOA: futuro e prospettive
Il mercato SOA: futuro e prospettiveEmanuele Della Valle
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
Sabino Labarile
 

Similar to Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017 (20)

Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)
 
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
2015.01.09 - Principi del Cloud Computing e migrazione delle applicazioni mod...
 
Designing with microservices - Daniele Mondello
Designing with microservices - Daniele MondelloDesigning with microservices - Daniele Mondello
Designing with microservices - Daniele Mondello
 
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
1° Seminario CRUI - GARR: Una Cloud federata per università e ricerca, come u...
 
OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016OpenDay 3 TIM WCap - 05/05/2016
OpenDay 3 TIM WCap - 05/05/2016
 
Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?Cloud & No-Coding: come fare su Azure?
Cloud & No-Coding: come fare su Azure?
 
Pensiero Analogico e Microservizi
Pensiero Analogico  e MicroserviziPensiero Analogico  e Microservizi
Pensiero Analogico e Microservizi
 
Azure functions
Azure functionsAzure functions
Azure functions
 
Laboratori virtuali
Laboratori virtualiLaboratori virtuali
Laboratori virtuali
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
 
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
Application insights - Meet{cast} - Meetup #AperiTech dotNET{podcast} - Marzo...
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
 
Crui cloud computing solution for university campus
Crui   cloud computing solution for university campusCrui   cloud computing solution for university campus
Crui cloud computing solution for university campus
 
Cost Optimization - Global Azure Bootcamp 2019
Cost Optimization - Global Azure Bootcamp 2019Cost Optimization - Global Azure Bootcamp 2019
Cost Optimization - Global Azure Bootcamp 2019
 
Machine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devopsMachine learning models continuous deployment on azure using devops
Machine learning models continuous deployment on azure using devops
 
Webcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio OnlineWebcast - Introduzione a Visual Studio Online
Webcast - Introduzione a Visual Studio Online
 
Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentials
 
Azure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloudAzure Web Apps: portare il tuo sito sul cloud
Azure Web Apps: portare il tuo sito sul cloud
 
Il mercato SOA: futuro e prospettive
Il mercato SOA: futuro e prospettiveIl mercato SOA: futuro e prospettive
Il mercato SOA: futuro e prospettive
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
 

More from Codemotion

Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Codemotion
 
Pompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyPompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending story
Codemotion
 
Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storia
Codemotion
 
Pennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserPennisi - Essere Richard Altwasser
Pennisi - Essere Richard Altwasser
Codemotion
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Codemotion
 
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Codemotion
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Codemotion
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Codemotion
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Codemotion
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Codemotion
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Codemotion
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Codemotion
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Codemotion
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Codemotion
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Codemotion
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
Codemotion
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Codemotion
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Codemotion
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Codemotion
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Codemotion
 

More from Codemotion (20)

Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
 
Pompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyPompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending story
 
Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storia
 
Pennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserPennisi - Essere Richard Altwasser
Pennisi - Essere Richard Altwasser
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
 
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
 

Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017

  • 1. Azure Functions Deep Dive Giorgio Di Nardo ROME 24-25 MARCH 2017
  • 2. ROME 24-25 MARCH 2017 Chi sono?  Software Architect @ Proge-Software  Fondatore @ DomusDotNet  Collaboratore @ GetLatestVersion  akelitz@hotmail.com  blog.ugidotnet.org/akelitz  @akelitz
  • 3. ROME 24-25 MARCH 2017 Serverless computing… cioè? Il Serveless computing (anche detto Function as a Service o FaaS) è un modello di esecuzione del codice su cloud, nel quale l’esistenza dei server è del tutto nascosta ed è il cloud provider che si occupa della gestione del contenitore PaaS richiesto per l’esecuzione dello stesso
  • 4. ROME 24-25 MARCH 2017 Cosa sono le Azure Functions? Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in Azure or third party service as well as on-premises systems.
  • 5. ROME 24-25 MARCH 2017 In breve: eventi + codice C#,JS,… Richiesta HTTP Schedulazione Dati (Queue, ecc.)
  • 6. ROME 24-25 MARCH 2017 Vantaggi  Sviluppo RAD  Portale/CLI/Visual Studio  Zero boilerplate = focus sui requisiti utente  Si basa su Web App  Addio infrastruttura  Modelli di costi flessibile  Pay-per-use o Piano App Service
  • 7. ROME 24-25 MARCH 2017 Costi  A consumo  In un piano App Service esistente https://azure.microsoft.com/it-it/pricing/details/functions/ Costo Quota gratis Risorse €0,000014/GB-s 400.000 GB-s Esecuzioni €0,169/M 1 M
  • 8. ROME 24-25 MARCH 2017 Scenari d’utilizzo  Gestione di processi automatici  Integrazione con sistemi esterni  Scomposizione di applicativi monolitici esistenti  Sviluppo di applicazioni che richiedono scalabilità indipendente delle componenti  SPA/Mobile con CQRS ed Event Sourcing
  • 9. ROME 24-25 MARCH 2017 Demo La prima Function non si scorda mai
  • 10. ROME 24-25 MARCH 2017 Non finisce qui!  Debugging  Sia in localhost che su cloud con Visual Studio  CORS  Configurabile sul portale con un click  Autorizzazioni  Supporta AAD e 3rd party via Web App  Monitoraggio  Real-time e Storico sul portale o via Kudu
  • 11. ROME 24-25 MARCH 2017 Demo Live Event Stream
  • 12. ROME 24-25 MARCH 2017 Risorse utili  Documentazione  http://functions.azure.com  https://docs.microsoft.com/en-us/azure/azure-functions/  https://github.com/markheath/azure-functions-links  Codice @ GitHub  https://github.com/Azure?utf8=%E2%9C%93&q=functions&t ype=&language=  Corsi @ Pluralsight  Azure Functions Fundamentals  Azure Function Triggers Quick Start
  • 13. ROME 24-25 MARCH 2017 Grazie per l’attenzione  Software Architect @ Proge-Software  Fondatore @ DomusDotNet  Collaboratore @ GetLatestVersion  akelitz@hotmail.com  blog.ugidotnet.org/akelitz  @akelitz