SlideShare a Scribd company logo
P R E S E N TA
Cosa c’è oltre il Worker
Role: dagli Scale Set al
“serverless computing”
Vito Flavio Lorusso – Senior SDE -
Microsoft
• Cosa intendiamo per «scalable» Worker
• In Azure:
Come si realizzavano solo 2 anni fa
Quali scelte abbiamo oggi
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 2
Agenda
3
Proudly produced by scalable workers in Camino
Job host
Anatomia di
un Worker
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 4
My long running job
Job journal
Another long running job
Yet another long running job
Job scheduler
Solo 2 anni
fa
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 5
Worker role
Storage queue
Storage table
Sviluppo/Debug Visual Studio, Eclipse o text editor
Linguaggi .NET, Java, PHP (o qualunque runtime su windows)
Deploy Creazione di un .cspkg (signed zip)
Autoscale CPU, RAM, Network
CI/CD Visual Studio, PSH o VSTS
Personalizzazione OS Startup Script
Manutenzione OS Update automatico
OS
.cspkg
code
.cloudconfig
.serviceconfig
Oggi
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 6
Come implemento uno scalable worker in Azure?
Functions
(serverless è il
futuro!)
WebJobs (facile
dai!)
Containers!
Cos’altro?
Service Fabric
(microservizi…
serve dire altro?)
Scale Sets
(sempre vicini al
metallo)
Batch? (tutti ne
parlano ma non
so cosa sia)
Functions
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 7
Functions
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 8
Storage table
Sviluppo/Debug Visual Studio Code – Debug limitato
Linguaggi .NET, NodeJS
Deploy Publish su Git repo
Autoscale Basato su trigger o su App Service (CPU, RAM, Network)
CI/CD VSTS – GIT
Personalizzazione OS Nessuna
Manutenzione OS Update automatico
OS
App Service
.init
code
[TRIGGER]
Webjobs
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 9
WebJobs
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 10
Storage table
Sviluppo/Debug Visual Studio o altri editor di codice
Linguaggi .exe - .NET assemblies compiled with the WebJobs SDK
.cmd, .bat, .exe (using windows cmd)
.sh (using bash)
.php (using php)
.py (using python)
.js (using node)
Deploy Come Web App (Visual Studio, Git, VSTS)
Autoscale Basato su App Service (CPU, RAM, Network)
CI/CD VSTS – GIT
Personalizzazione OS Nessuna
Manutenzione OS Update automatico
OS
App Service
JobHost
code
[TRIGGER]
Scheduler
WebJobs
Batch
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 11
Batch
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 12
Sviluppo/Debug Visual Studio o altri editor di codice
Linguaggi Powershell, .NET, CLI, Java, Node.js, Python
Deploy Visual Studio, VSTS, Azure Resource Manager
Autoscale Parametri custom con la Batch Library
CI/CD VSTS – ARM
Personalizzazione OS Nessuna
Manutenzione OS Update automatico
OS
Batch
Application Package (.zip)
Service Fabric
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 13
Service
Fabric
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 14
Sviluppo/Debug Visual Studio o altri editor di codice
Linguaggi .NET
Java (preview)
Deploy Visual Studio, VSTS, ARM
Autoscale Basato su VM Scale Set (CPU, RAM, Network) o custom
CI/CD VSTS – ARM
Personalizzazione OS Nessuna
Manutenzione OS e Service Fabric Host Update automatico o manuale
VM Scale Set
OS
Service Fabric Host
Node Type
code
Storage queue
[Custom]
Service
Fabric[Local Storage]
(stateful service)
Azure Container
Service
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 15
Container
Service
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 16
Sviluppo/Debug Qualunque editor di codice
Linguaggi Qualunque (a seconda del sistema operativo)
Deploy ARM, DockerFile
Autoscale Basato su VM Scale Set (CPU, RAM, Network) o custom (API di ACS)
CI/CD VSTS – ARM
Personalizzazione OS Completa
Manutenzione OS e Docker Host Update manuale
VM Scale Set
OS
Docker Host
Docker Container
[Custom]
[Custom] Swarm
DCOS
MESOS
VM Scale Sets
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 17
VM Scale
Sets
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 18
Sviluppo/Debug Qualunque editor di codice
Linguaggi Qualunque (a seconda del sistema operativo)
Deploy ARM e quello supportato dallo stack applicativo
Autoscale CPU, RAM, Network
CI/CD ARM e quello supportato dallo stack applicativo
Personalizzazione OS Completa
Manutenzione OS e Application host manuale
VM Scale Set
OS
Your App Host
Custom components
[Custom]
[Custom]
Custom code
Wrap UP
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 19
Iniziate dal codice (Functions)
Requisiti perfetti per Batch? Usate Batch!
Scendete di livello solo se avete «veramente» bisogno di più
performance o flessibilità
Usate ACS «solo» se la vostra infrastruttura è già docker
centrica
Service Fabric è «potentissimo» ma parte da 5-10 nodi in
produzione 
Q&A
Domande e Risposte
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 20
Risorse
• Link utili
 Functions
 https://docs.microsoft.com/en-us/azure/azure-
functions/index
 WebJobs
 https://docs.microsoft.com/en-us/azure/app-service-
web/websites-webjobs-resources
 Batch
 https://docs.microsoft.com/en-us/azure/batch/
 Service Fabric
 https://docs.microsoft.com/en-us/azure/service-fabric/
 Container Service
 https://docs.microsoft.com/en-us/azure/container-
service/
 VM Scale Sets
 https://docs.microsoft.com/en-us/azure/virtual-
machine-scale-sets/
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 21
Contatti
OverNet
Education
OverNet Education
info@overneteducation.it
www.overneteducation.it
Tel. 02 365738
@overnete
www.facebook.com/OverNetEducation
www.linkedin.com/company/overnet-solutions
www.wpc2016.it
www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 22

More Related Content

PDF
Deploy PrestaShop con Docker
PDF
Blazor per uno sviluppatore Web Form
PPTX
WPO: Ottimizzazione step-by-step del front-end di un e-commerce
PDF
Blazor ha vinto? Storie di casi reali
PPTX
Workflow Dev-Test-Live per WordPress
PPTX
.NET Core, ASP.NET Core e Linux per il Mobile
PDF
Presentazione IBM i virtualizzazione su Power System
PDF
ASP.NET Core Web Framework Benchmarks
Deploy PrestaShop con Docker
Blazor per uno sviluppatore Web Form
WPO: Ottimizzazione step-by-step del front-end di un e-commerce
Blazor ha vinto? Storie di casi reali
Workflow Dev-Test-Live per WordPress
.NET Core, ASP.NET Core e Linux per il Mobile
Presentazione IBM i virtualizzazione su Power System
ASP.NET Core Web Framework Benchmarks

What's hot (15)

PDF
StarterTheme Prestashop 1.7
PDF
PrestaShop 1.7
PDF
Tech Webinar: Come ottimizzare il workflow nello sviluppo di Web App
PPTX
Works with ASP.NET Core on Linux and Mac
PDF
Windows Azure and Joomla! @ Joomla day 2013
PDF
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
PPTX
Test di carico con Visual Studio Online: facile!
PDF
USB WebServer
PPTX
Single Page Applications
PPTX
Introduzione ad ASP.NET Core
PPT
Esempi pratici
PPTX
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
PDF
Evento Veeam & Assyrus - 2 Novità di Veeam Backup & Replication v9
PPTX
Creare API pubbliche, come evitare gli errori comuni
PDF
What’s my destiny vSphere 6 @ VMUG.IT 20150304
StarterTheme Prestashop 1.7
PrestaShop 1.7
Tech Webinar: Come ottimizzare il workflow nello sviluppo di Web App
Works with ASP.NET Core on Linux and Mac
Windows Azure and Joomla! @ Joomla day 2013
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente
Test di carico con Visual Studio Online: facile!
USB WebServer
Single Page Applications
Introduzione ad ASP.NET Core
Esempi pratici
ASP.NET 4.6 e ASP.NET 5...l'evoluzione del web
Evento Veeam & Assyrus - 2 Novità di Veeam Backup & Replication v9
Creare API pubbliche, come evitare gli errori comuni
What’s my destiny vSphere 6 @ VMUG.IT 20150304
Ad

Similar to Oltre il Worker Role, da Serverless computing a VM Scale Set (20)

PPTX
Alessandro Forte - ASP.Net 4.0
PDF
ASP.NET Core essentials
PDF
Creazione componenti con Vue js
PPTX
Webcast - Introduzione a Visual Studio Online
PPTX
Cosa c'è di nuovo in asp.net core 2 0
PPTX
Meetup Fluent Design e Progressive Web App
PDF
Meetup Progressive Web App
PPT
3DD 1e Reconfig
PPTX
Novità di Asp.Net 4.0
PDF
Designing with microservices - Daniele Mondello
PDF
Applicazioni HTML5 Superveloci - Salvatore Romeo
PDF
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
PPTX
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
PPTX
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
PDF
Blazor: are we ready for the launch?
PPTX
Christmas greetings cards with blazor
PDF
Differenze tra Windows Server 2012 R2 su e Server 2016 Yashi Italia
PPTX
ASP.NET MVC 6 - uno sguardo al futuro
PPTX
Asp.net 4 Community Tour VS2010
Alessandro Forte - ASP.Net 4.0
ASP.NET Core essentials
Creazione componenti con Vue js
Webcast - Introduzione a Visual Studio Online
Cosa c'è di nuovo in asp.net core 2 0
Meetup Fluent Design e Progressive Web App
Meetup Progressive Web App
3DD 1e Reconfig
Novità di Asp.Net 4.0
Designing with microservices - Daniele Mondello
Applicazioni HTML5 Superveloci - Salvatore Romeo
Meetup DotNetCode Settembre 2018 - ASP.NET Core 2.1
CCI 2019 - Exchange 2019 da 0 ad HA in 1 ora
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
Blazor: are we ready for the launch?
Christmas greetings cards with blazor
Differenze tra Windows Server 2012 R2 su e Server 2016 Yashi Italia
ASP.NET MVC 6 - uno sguardo al futuro
Asp.net 4 Community Tour VS2010
Ad

More from Vito Flavio Lorusso (7)

PPTX
Prestashop and Azure
PPTX
Automatizzare tutto con Azure Resource Manager
PPTX
Capture, record, clip, embed and play, search: video from newbie to ninja
PDF
Nosql why and how on Microsoft Azure
PDF
Cosa non fare assolutamente sul cloud
PDF
Windows azure e il supporto ai paradigmi del cloud
PDF
WPC2012 Windows Azure - Architetture e costi nell'era del cloud
Prestashop and Azure
Automatizzare tutto con Azure Resource Manager
Capture, record, clip, embed and play, search: video from newbie to ninja
Nosql why and how on Microsoft Azure
Cosa non fare assolutamente sul cloud
Windows azure e il supporto ai paradigmi del cloud
WPC2012 Windows Azure - Architetture e costi nell'era del cloud

Oltre il Worker Role, da Serverless computing a VM Scale Set

  • 1. P R E S E N TA Cosa c’è oltre il Worker Role: dagli Scale Set al “serverless computing” Vito Flavio Lorusso – Senior SDE - Microsoft
  • 2. • Cosa intendiamo per «scalable» Worker • In Azure: Come si realizzavano solo 2 anni fa Quali scelte abbiamo oggi www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 2 Agenda
  • 3. 3 Proudly produced by scalable workers in Camino
  • 4. Job host Anatomia di un Worker www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 4 My long running job Job journal Another long running job Yet another long running job Job scheduler
  • 5. Solo 2 anni fa www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 5 Worker role Storage queue Storage table Sviluppo/Debug Visual Studio, Eclipse o text editor Linguaggi .NET, Java, PHP (o qualunque runtime su windows) Deploy Creazione di un .cspkg (signed zip) Autoscale CPU, RAM, Network CI/CD Visual Studio, PSH o VSTS Personalizzazione OS Startup Script Manutenzione OS Update automatico OS .cspkg code .cloudconfig .serviceconfig
  • 6. Oggi www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 6 Come implemento uno scalable worker in Azure? Functions (serverless è il futuro!) WebJobs (facile dai!) Containers! Cos’altro? Service Fabric (microservizi… serve dire altro?) Scale Sets (sempre vicini al metallo) Batch? (tutti ne parlano ma non so cosa sia)
  • 8. Functions www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 8 Storage table Sviluppo/Debug Visual Studio Code – Debug limitato Linguaggi .NET, NodeJS Deploy Publish su Git repo Autoscale Basato su trigger o su App Service (CPU, RAM, Network) CI/CD VSTS – GIT Personalizzazione OS Nessuna Manutenzione OS Update automatico OS App Service .init code [TRIGGER]
  • 10. WebJobs www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 10 Storage table Sviluppo/Debug Visual Studio o altri editor di codice Linguaggi .exe - .NET assemblies compiled with the WebJobs SDK .cmd, .bat, .exe (using windows cmd) .sh (using bash) .php (using php) .py (using python) .js (using node) Deploy Come Web App (Visual Studio, Git, VSTS) Autoscale Basato su App Service (CPU, RAM, Network) CI/CD VSTS – GIT Personalizzazione OS Nessuna Manutenzione OS Update automatico OS App Service JobHost code [TRIGGER] Scheduler WebJobs
  • 12. Batch www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 12 Sviluppo/Debug Visual Studio o altri editor di codice Linguaggi Powershell, .NET, CLI, Java, Node.js, Python Deploy Visual Studio, VSTS, Azure Resource Manager Autoscale Parametri custom con la Batch Library CI/CD VSTS – ARM Personalizzazione OS Nessuna Manutenzione OS Update automatico OS Batch Application Package (.zip)
  • 13. Service Fabric www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 13
  • 14. Service Fabric www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 14 Sviluppo/Debug Visual Studio o altri editor di codice Linguaggi .NET Java (preview) Deploy Visual Studio, VSTS, ARM Autoscale Basato su VM Scale Set (CPU, RAM, Network) o custom CI/CD VSTS – ARM Personalizzazione OS Nessuna Manutenzione OS e Service Fabric Host Update automatico o manuale VM Scale Set OS Service Fabric Host Node Type code Storage queue [Custom] Service Fabric[Local Storage] (stateful service)
  • 15. Azure Container Service www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 15
  • 16. Container Service www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 16 Sviluppo/Debug Qualunque editor di codice Linguaggi Qualunque (a seconda del sistema operativo) Deploy ARM, DockerFile Autoscale Basato su VM Scale Set (CPU, RAM, Network) o custom (API di ACS) CI/CD VSTS – ARM Personalizzazione OS Completa Manutenzione OS e Docker Host Update manuale VM Scale Set OS Docker Host Docker Container [Custom] [Custom] Swarm DCOS MESOS
  • 17. VM Scale Sets www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 17
  • 18. VM Scale Sets www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 18 Sviluppo/Debug Qualunque editor di codice Linguaggi Qualunque (a seconda del sistema operativo) Deploy ARM e quello supportato dallo stack applicativo Autoscale CPU, RAM, Network CI/CD ARM e quello supportato dallo stack applicativo Personalizzazione OS Completa Manutenzione OS e Application host manuale VM Scale Set OS Your App Host Custom components [Custom] [Custom] Custom code
  • 19. Wrap UP www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 19 Iniziate dal codice (Functions) Requisiti perfetti per Batch? Usate Batch! Scendete di livello solo se avete «veramente» bisogno di più performance o flessibilità Usate ACS «solo» se la vostra infrastruttura è già docker centrica Service Fabric è «potentissimo» ma parte da 5-10 nodi in produzione 
  • 20. Q&A Domande e Risposte www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 20
  • 21. Risorse • Link utili  Functions  https://docs.microsoft.com/en-us/azure/azure- functions/index  WebJobs  https://docs.microsoft.com/en-us/azure/app-service- web/websites-webjobs-resources  Batch  https://docs.microsoft.com/en-us/azure/batch/  Service Fabric  https://docs.microsoft.com/en-us/azure/service-fabric/  Container Service  https://docs.microsoft.com/en-us/azure/container- service/  VM Scale Sets  https://docs.microsoft.com/en-us/azure/virtual- machine-scale-sets/ www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 21
  • 22. Contatti OverNet Education OverNet Education info@overneteducation.it www.overneteducation.it Tel. 02 365738 @overnete www.facebook.com/OverNetEducation www.linkedin.com/company/overnet-solutions www.wpc2016.it www.wpc2016.it – info@wpc2016.it - +39 02 365738.11 22