Verona.

Slides:



Advertisements
Presentazioni simili
Cache Memory Prof. G. Nicosia University of Catania
Advertisements

ISA Server 2004 Enterprise Edition Preview. ISA Server 2004.
1.E un algoritmo ricorsivo: Tutti le istanze di oggetti raggiungibili da un oggetto persistente diventano anchessi persistenti.
Un DataBase Management System (DBMS) relazionale client/server.
Raffaele Cirullo Head of New Media Seconda Giornata italiana della statistica Aziende e bigdata.
Costruzione di Interfacce Lezione 10 Dal Java al C++ parte 1
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 3 - Functions Outline 3.1Introduction 3.2Program Components in C++ 3.3Math Library Functions 3.4Functions.
COLT Enterprise Cloud Dionigi Faccenda La visione di COLT.
Queuing or Waiting Line Models
La sicurezza può essere fornita in ciascuno degli strati: applicazione, trasporto, rete. Quando la sicurezza è fornita per uno specifico protocollo dello.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Capitolo 20: Sistemi multimediali
Motor Sizing.
Come nella stampa tradizionale, un giornale online può essere di informazione informazione o un periodico dedicato a una disciplina specifica.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
PRESENTAZIONE ARXivar 4.6
Analysis and Development of Functions in REST Logic: Application to the «DataView» Web App UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIA DIPARTIMENTO.
EMPOWERMENT OF VULNERABLE PEOPLE An integrated project.
Introduction to automatic ABMs documentation Keywords: Doxygen ODD protocol MASON documentation Simone Romano.
Distributed System ( )7 TCP/IP four-layer model.
FESR Consorzio COMETA Pier Paolo CORSO Giuseppe CASTGLIA Marco CIPOLLA Industry Day Catania, 30 Giugno 2011 Commercial applications.
Da SQL Server a MySQL Migrazione di database SQLWays – Software per migrazione Presentazione Copyright (c) Ispirer Systems Ltd.
Microsoft Confidential Gabriele Castellani Developer & Platform Evangelism Microsoft.
MyEconLab_Univerità degli studi di Milano, corso Prof.ssa Valentina Raimondi How to Access MyEconLab 1.
Extension pack per IIS7 Piergiorgio Malusardi IT Pro Evangelist
Un problema multi impianto Un’azienda dispone di due fabbriche A e B. Ciascuna fabbrica produce due prodotti: standard e deluxe Ogni fabbrica, A e B, gestisce.
BaBar Tier A Administration Workshop CCR, Paestum Giugno 2003 Alberto Crescente, INFN Sez. Padova.
Viruses.
MyEconLab_Univerità degli studi di Milano, corso Prof.ssa Valentina Raimondi How to Access MyEconLab 1.
SUMMARY Different classes and distortions RIEPILOGO Le diverse classi e le distorsioni RIEPILOGO Le diverse classi e le distorsioni.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Presenta – #wpc15it1 BI005 - Real Power BI Franco Perduca Factory Software srl
Presenta – #wpc15it1 Overview di Azure Logic Apps Marco Parenzan – Microsoft Azure MVP.
#sqlsatParma #sqlsat462 November 28°, 2015 SQL Server 2016 Query Store: un nuovo modo di ottimizzare le query Saverio Lorenzini PFE Principal Engineer.
STMan Advanced Graphics Controller. What is STMan  STMan is an advanced graphic controller for Etere automation  STMan is able to control multiple graphics.
Aggiornamento attivita’ gruppo Windows Gian Piero Siroli, Dip. di Fisica, Università di Bologna e INFN CCR, ottobre 2007.
MSc in Communication Sciences Program in Technologies for Human Communication Davide Eynard Facoltà di scienze della comunicazione Università della.
Organizzazione e Formazione per l’arresto cardiaco in ospedale Overview Epidemiologia dell’ arresto intraospedaliero Criticita’ organizzative Applicazioni.
Do You Want To Pass Actual Exam in 1 st Attempt?.
Office WPC049 Strumenti di supporto e analisi per Office 365
Crea il tuo sistema aziendale sul web a partire dei fogli Excel che usi. ShareXLS
Università degli studi di Roma Tor Vergata
App-to-Cloud Security
Vito Flavio Lorusso – Senior SDE - Microsoft
Riunione INFN – Bologna, 17 January 2013
WRITING – EXERCISE TYPES
MONBOX Federico Bitelli bitelli<at>fis.uniroma3.it
Salvatore Upload data on Azure SQL Database using Azure Messaging, Stream Analytics & Logic Apps Salvatore
Project Cerberus : Portale per la Gestione dei Server
Dichiarazione dei servizi di sito nel GOCDB
Prof. Stefano Zambon Università di Ferrara e WICI
VERT.X Un TOOLKIT per creare applicazioni reattive.
PI2S2 Regional Operation Centre Sistema di Supporto Sistema di Monitoring Rita Ricceri Consorzio Cometa Tutorial per Site Administrator Messina,
Job Application Monitoring (JAM)
ONEDATA - distributed data caching -
Ingegneria del Software 2
AusTel by taha.a.
Cyber Safety.
2018/9/ /9/11 USER ENVIRONMENT 1 1.
Human machine interaction
Adolf Luther Born 1912 in Krefeld, Germany. Died 1990 Krefeld.
Studente : Andrea Cassarà Classe: 5AII A.S. 2014/2015 Link Sito
Proposal for the Piceno Lab on Mediterranean Diet
Free .NET Hosting - somee.com
Svolgimento della Sezione 5: CONTROLLORI
A comparison between day and night cosmic muons flux
Microsoft SQL Graph Database
A semantic recommender system based on social user profiling
Build /13/2019 ASP.NET Core Web API all’opera Problemi veri nello sviluppo di un backend vero Marco Minerva Microsoft MVP Windows Development
Wikipedia Wikipedia è un'enciclopedia online, collaborativa e libera. Grazie al contributo di volontari da tutto il mondo, Wikipedia ad ora è disponibile.
Transcript della presentazione:

Verona

Gli sponsor Mondiali

Gli sponsor del nostro evento Platinum Sponsor

Gli sponsor del nostro evento Gold Sponsor

Gli sponsor del nostro evento Basic Sponsor

#GlobalAzure

Scalare le proprie applicazioni con Azure Functions

@ATosato86 andreatosato ANDREA TOSATO andreatosato

Introduzione Primi passi con Azure Functions

Il contesto

Il contesto

Da microservizi a functions

Linguaggi supportati

Timer-based processing Azure service event processing Scenari di utilizzo Timer-based processing Azure service event processing SaaS event processing Serverless web application architectures Serverless mobile backends Real-time stream processing Real-time bot messaging Your App or Service Office 365 Office Graph Azure Storage Other Functions Legacy Systems Web Services

Timer Function Apps Run at explicitly specified intervals, like every day at 2:00 am using CRON expressions, like “0 */5 * * * *“ (every 5 minutes) Can send information to other systems, but typically don’t “return” information, only write to logs Great for redundant cleanup and data management Great for checking state of services Can be combined with other functions

Webhook & API Function Apps Triggered by events in other services, like GitHub, Team Foundation Services, Office 365, OneDrive, Microsoft PowerApps Takes in a request and sends back a response Often mimic Web API and legacy web services flows Typically need CORS settings managed Great for building Logic Apps

Demo Creazione di una functions, template disponibili. Progetti attribute e settings

Binding supportati type 1.x 2.x Trigger Input Output Archiviazione BLOB ✔ ✔1 Cosmos DB Griglia di eventi Hub eventi File esterno2 Tabella esterna2 HTTP App per dispositivi mobili Hub di notifica di Azure Archiviazione code Bus di servizio Archiviazione tabelle Timer Webhook type 1.x 2.x Trigger Input Output Microsoft Graph Tabelle di Excel ✔ Microsoft Graph File di OneDrive Microsoft Graph Indirizzo e-mail Outlook Microsoft Graph Eventi Microsoft Graph Token di autenticazione type 1.x 2.x Trigger Input Output SendGrid ✔ Twilio https://docs.microsoft.com/it-it/azure/azure-functions/functions-triggers-bindings

File esterno Connettore Trigger Input Output Box x Dropbox FTP Preview Connettore Trigger Input Output Box x Dropbox FTP OneDrive OneDrive for Business SFTP Google Drive

Tabella esterna Preview DB2 x Dynamics 365 for Operations Dynamics 365 Connettore Trigger Input Output DB2 x Dynamics 365 for Operations Dynamics 365 Dynamics NAV Fogli Google Informix Dynamics 365 for Financials MySQL Oracle Database Common Data Service Connettore Trigger Input Output Salesforce x SharePoint SQL Server Teradata UserVoice Zendesk

External Table binding { "bindings": [ "type": "manualTrigger", "direction": "in", "name": "input" }, "type": "apiHubTable", "name": "table", "connection": "ConnectionAppSettingsKey", "dataSetName": "default", "tableName": "Contact", "entityId": "", } ], "disabled": false public class Contact { public string Id { get; set; } public string LastName { get; set; } public string FirstName { get; set; } } CREATE TABLE Contact ( Id int NOT NULL, LastName varchar(20) NOT NULL, FirstName varchar(20) NOT NULL, CONSTRAINT PK_Contact_Id PRIMARY KEY (Id) ) GO

External Table binding public static async Task Run(string input, ITable<Contact> table, TraceWriter log) { //Iterate over every value in the source table ContinuationToken continuationToken = null; do //retrieve table values var contactsSegment = await table.ListEntitiesAsync(continuationToken: continuationToken); foreach (var contact in contactsSegment.Items) log.Info(string.Format("{0} {1}", contact.FirstName, contact.LastName)); } continuationToken = contactsSegment.ContinuationToken; while (continuationToken != null); #r "Microsoft.Azure.ApiHub.Sdk" #r "Newtonsoft.Json" using System; using Microsoft.Azure.ApiHub;

Anatomia di una Function A “Run” file that containing the function code (static class) A “Function” file containing all service and trigger bindings and parameters (function.json) A “Project” file containing project assembly and NuGet package references App Service settings, such as connection strings and API keys code Executable code Function configuration .NET Core and Project references

http://json.schemastore.org/host Il file host Il file di metadati host.json contiene le opzioni di configurazione globali che interessano tutte le funzioni dell’app per le funzioni. In questo articolo sono elencate le impostazioni disponibili.

Il progetto e i suoi file Demo Il progetto e i suoi file

Consumption Plan Come ottimizzare una applicazione per sfruttare al meglio il piano di servizi a consumo

Cold vs Warm Azure allocates a preconfigured server from the pool of warm workers to your app. This server already has the Functions runtime running on it, but it is unspecialized. This worker becomes specialized by configuring the Functions runtime in ways that are specific to your app. A few things happen to do this specialization, including: The Azure Functions infrastructure mounts your Azure Files content to the worker you’ve been assigned App settings specific to your function app are applied to the worker The Functions runtime resets, and any required extensions are loaded onto the worker. To figure out which extensions to load, the runtime reads the function.json files of any function in the function app. For instance, this happens if you’re using Durable Functions, or if you have input or output bindings. The functions themselves are loaded into memory by language providers. This will take a varying amount of time based on the size of your application. Your code runs.

Cold vs Warm Il consumption plan è il vero modello “serverless” Reagisce agli eventi e scala all’occorenza. Viene pagato per singolo utilizzo. Tutto avviene senza preoccuparsi del gestore del servizio. Il dedicated plan, risiede sulla virtual machine dedicata. Consente un controllo maggiore poichè risiede su una propria macchina. E’ sempre disponibile ed è preferibile utilizzaro: Macchina VMs sotto utilizzata Esecuzione continua della Functions e un maggior controllo dei costi. (polling continuo) Più CPU e memoria Esecuzione più lunga di 5 minuti (configurazione standard) o 10 (massimo contentiti) Richiede funzioni disponibili solo sull’App Service Plan (VNET/VPN) https://blogs.msdn.microsoft.com/appserviceteam/2018/02/07/understanding-serverless-cold-start/

Pricing

Demo Scalabilità tramite Load Test https://github.com/andreatosato/GlobalAzureBootcampApp

Load Testing 2 minuti Impostazioni del test

Load Testing 2 minuti Summary

Load Testing 2 minuti Chart

Load Testing 2 minuti Richieste - Istanze

Load Testing 5 minuti Impostazioni del test

Load Testing 5 minuti Summary

Load Testing 5 minuti Chart

Load Testing 5 minuti Richieste - Istanze

Load Testing 10 minuti Impostazioni del test

Load Testing 10 minuti Summary

Load Testing 10 minuti Chart

Load Testing 10 minuti Richieste - Istanze

Comparazione con AWS e Google

Comparazione Gennaio 2018 https://www.azurefromthetrenches.com/azure-functions-vs-aws-lambda-scaling-face-off/

Comparazione https://www.azurefromthetrenches.com/azure-functions-significant-improvements-in-http-trigger-scaling/

Comparazione Marzo 2018 https://www.azurefromthetrenches.com/azure-functions-significant-improvements-in-http-trigger-scaling/

Marzo 2018

http://functionlibrary.azurewebsites.net/ Progetti esempio

Durable Functions Come ottimizzare una applicazione per sfruttare al meglio il piano di servizi a consumo

Come cambia la gestione di un flusso Con durable functions possiamo gestire la rientranza sulla funzione chiamante. Passiamo da una gestione manuale a una gestione automatizzata

Durable Functions Function chaining Fan-out/fan-in

Durable Functions Async HTTP APIs Fan-out/fan-in

Durable Functions Human interaction

Demo Human Interaction

Durable Functions

Complete Durable Functions Demo Complete Durable Functions

Durable Functions

Azure Functions Runtime

Azure Functions Runtime Demo Azure Functions Runtime

Azure functions runtime - Docker https://hub.docker.com/r/microsoft/azure-functions-runtime/

Andreatosato @ATosato86 Andreatosato