smau firenze 2014 - siti ed applicazioni web nel cloud: piccoli team e sviluppatori individuali, ...
DESCRIPTION
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso.TRANSCRIPT
Titolo della presentazionePaolo Dadda
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Paolo Dadda
Membro IWA ITALY nr. 0307429 Professionista Web ai sensi della Legge 4/2013
Contatti:Tel.: 393.4298004 !
Ufficio: Via 4 Novembre, 94
Cislago (VA)
WebSite: www.2dweb.it !Mail: [email protected]
Chi Sono
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 3
Cos’è IWA/HWGIWA/HWG è un’Associazione professionale no profit riconosciuta leader mondiale nella fornitura dei principi e delle certificazioni di formazione per i professionisti della Rete Internet; è presente in 100 paesi, con 130 sedi ufficiali in rappresentanza di più di 165.000 associati.!La sua missione • Fornire programmi formativi di qualità• Fornire agli associati supporto e collaborazione a livello regionale, nazionale e
internazionale, nonché un marchio di affiliazione riconosciuto a livello mondiale• Promuovere i principi universali di etica e di pratica professionale per tutti i
professionisti della Rete Internet• Fornire supporto per la definizione e lo studio di normative nei Paesi in cui è presente!
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 4
Cos’è IWA/HWG!Partecipazioni ed attività internazionali !!!Partecipazioni ed attività nazionali !!!Network: www.iwa.it - webaccessibile.org - www.itlists.org - blog.iwa.it - www.skillprofiles.eu
Perché associarsi ?• Fare rete tra professionisti• Partecipare a gruppi di lavoro anche internazionali• Convenzioni per tutela professionalità• Conoscere e partecipare a varie iniziative su tutto il territorio Italiano
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 5
Iscrizione IWA - Speciale SMAU Firenze 2014
http://www.iwa.it/join
Quota speciale SMAU Firenze 2014: 50,00 €
Potrai ottenere uno sconto sulla quota associativa
che pagherai € 50,00 anziché € 65,00.
Lo sconto vale sia per i nuovi soci che per i rinnovi.
Per usufruire dello sconto usa in fase di registrazione o rinnovo
il seguente promocode:
SMAUFIRENZE2014
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
IWA Italy e gli Skill Profiles
6
2006 • Il CEN riconosce IWA/HWG come realtà di standardizzazione in grado di fornire certificazioni sui percorsi formativi relativi al settore del Web 2007 • Iniziano i lavori del Gruppo IWA Italy Web Skills Profiles, coordinati da Pasquale Popolizio • I partecipanti sono oltre 200 ed hanno cultura e competenze trasversali professionisti, aziende, PA, università 2013 • Pubblicazione del documento G3 Web Skills Profiles 1.0 2014 • Pubblicazione del documento G3 Web Skills Profiles 2.0
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Webmaster? Un supereroe!
7
• Chi dice di saper fare tutto… • Forse non sa fare niente bene!
© Roberto Scano :-‐)
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
IWA Italy e gli Skill Profiles
8
PROFILO WSP-G3-001. WEB COMMUNITY MANAGER PROFILO WSP-G3-002. WEB PROJECT MANAGER PROFILO WSP-G3-003. WEB ACCOUNT MANAGER PROFILO WSP-G3-004. USER EXPERIENCE DESIGNERPROFILO WSP-G3-005. WEB BUSINESS ANALYST PROFILO WSP-G3-006. WEB DB ADMINISTRATORPROFILO WSP-G3-007. SEARCH ENGINE EXPERT PROFILO WSP-G3-008. WEB ADVERTISING MANAGER PROFILO WSP-G3-009. FRONTEND WEB DEVELOPER PROFILO WSP-G3-010. SERVER SIDE WEB DEVELOPER PROFILO WSP-G3-011. WEB CONTENT SPECIALIST PROFILO WSP-G3-012. WEB SERVER ADMINISTRATORPROFILO WSP-G3-013. INFORMATION ARCHITECT PROFILO WSP-G3-014. DIGITAL STRATEGIC PLANNERPROFILO WSP-G3-015. WEB ACCESSIBILITY EXPERT PROFILO WSP-G3-016. WEB SECURITY EXPERTPROFILO WSP-G3-017. MOBILE APPLICATION DEVELOPERPROFILO WSP-G3-018. E-COMMERCE SPECIALISTPROFILO WSP-G3-019. ONLINE STORE MANAGERPROFILO WSP-G3-020. REPUTATION MANAGERPROFILO WSP-G3-021. KNOWLEDGE MANAGER PROFILO WSP-G3-022. AUGMENTED REALITY EXPERT PROFILO WSP-G3-023. E-LEARNING SPECIALIST PROFILO WSP-G3-024. DATA SCIENTIST
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
IWA Italy e gli Skill Profiles
9
PROFILO WSP-G3-001. WEB COMMUNITY MANAGER PROFILO WSP-G3-002. WEB PROJECT MANAGER PROFILO WSP-G3-003. WEB ACCOUNT MANAGER PROFILO WSP-G3-004. USER EXPERIENCE DESIGNERPROFILO WSP-G3-005. WEB BUSINESS ANALYST PROFILO WSP-G3-006. WEB DB ADMINISTRATORPROFILO WSP-G3-007. SEARCH ENGINE EXPERT PROFILO WSP-G3-008. WEB ADVERTISING MANAGER PROFILO WSP-G3-009. FRONTEND WEB DEVELOPER PROFILO WSP-G3-010. SERVER SIDE WEB DEVELOPER PROFILO WSP-G3-011. WEB CONTENT SPECIALIST PROFILO WSP-G3-012. WEB SERVER ADMINISTRATORPROFILO WSP-G3-013. INFORMATION ARCHITECT PROFILO WSP-G3-014. DIGITAL STRATEGIC PLANNER PROFILO WSP-G3-015. WEB ACCESSIBILITY EXPERT PROFILO WSP-G3-016. WEB SECURITY EXPERTPROFILO WSP-G3-017. MOBILE APPLICATION DEVELOPERPROFILO WSP-G3-018. E-COMMERCE SPECIALISTPROFILO WSP-G3-019. ONLINE STORE MANAGERPROFILO WSP-G3-020. REPUTATION MANAGERPROFILO WSP-G3-021. KNOWLEDGE MANAGER PROFILO WSP-G3-022. AUGMENTED REALITY EXPERT PROFILO WSP-G3-023. E-LEARNING SPECIALIST PROFILO WSP-G3-024. DATA SCIENTIST
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Lavorare nel Cloud
10
Un cloud è una struttura hardware formata da più nodi di calcolo e di storage che lavorano in maniera sincronizzata per offrire dei servizi.
Fonte: Wikipedia
I servizi che possono essere offerti attraverso il cloud sono di 3 tipi: IaaS, PaaS e SaaS.
Ma di cosa si tratta in realtà?
Photo: Google/Connie Zhou
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 11
Bello! Fantastico!
Ma come applicare tutto questo anche a piccole e micro realtà ?
!Google App Engine
potrebbe essere un’alternativa
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 12
Che cos’è GAE?Google App Engine
Photo: Google/Connie Zhou
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 13
Google Cloud Platform
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Google App Engine
14
• Permette di creare siti ed applicazioni senza preoccuparci della loro architettura hardware e sobbarcandosi l’onere di gestire scalabilità e picchi di traffico.
• Bassi costi di ingresso e fatturazione in base al consumo reale.
• Supporta diversi linguaggi di programmazione: Java, Python, GO e PHP.
• Fornisce un’ottima SDK per lo sviluppo e test in locale.
• E’ corredata da un discreto numero di API già operative e documentate.
• Eseguita in Sandbox.
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Perché conviene?
15
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Perché conviene?
16
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Perché conviene?
17
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Scopriamo come funziona…
18
• app.yamlSpecifica le corrispondenze tra URL ed Handler oltre che per l’esposizione di cartelle o file statici.Contiene inoltre informazioni sull’applicazione, come l’id dell’applicazione, la versione…
• cron.yamlConsente di configurare attività regolari che operano in orari definiti o intervalli regolari comunemente noti come cron jobs.
• index.yamlIl datastore App Engine utilizza indici per ogni query che fa l’applicazione, necessari perrestituire rapidamente i dati quando unaquery viene effettuata.
YAML: i file di configurazione
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Scopriamo come funziona…
19
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Esempio di Route
20
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Esempio di Handler
21
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Esempio di Model
22
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Database e dati
23
Google App Engine permette diutilizzare differenti basi di dati:
• Google Cloud Datastore:database noSQL, supporta transactions, forte consistenza con ancestor queries, consistenza eventuale con altre queries.
• Google Cloud SQL:database SQL, relazionale forte consistenza
• Google Cloud Storage:permette di salvare oggetti e file anche di grandi dimensioni a costi ridotti nel cloud.
Photo: Google/Connie Zhou
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Due parole sul Datastore: qualcosa da considerare
24
Photo: Google/Connie Zhou
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Considerazioni sul Datastore
25
Il datastore di App Engine non è un database relazionale tradizionale. Gli oggetti si chiamano “entità” e sono caratterizzati da un tipo e da un insieme di proprietà.
Le entità del datastore sono di tipo "non relazionale". Le entità vengono scritte nel codice dell’applicazione, che accede al datastore direttamente.
Google Cloud Datastore è completamente gestito da Google, è un database schemaless per l'archiviazione di dati non relazionali. Il Datastore scala automaticamente e supporta le transazioni.
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Considerazioni sul Datastore
26
Il Datastore è un database che offre:
• Transazioni ACID.
• Elevata disponibilità di letture e scritture.
• Forte coerenza con le ancestor query.
• Coerenza Eventuale per tutte le altre query.
Ogni istanza del Datastore è completamente gestita da Google:
• Nessun downtime pianificato.
• Replicato su più datacenter.
• Scala automaticamente all’aumentare del traffico.
• Monitorato costantemente dagli Ingegneri di Google.
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 27
Iniziamo!
APPROCCIO PRATICO
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso 28
UPLOAD… GUARDA! FUNZIONA GIA’
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Considerazioni finali
29
Pro Contro
• Scala automaticamente • Nessuna manutenzione server • Sviluppo semplice e veloce • Si paga il consumo effettivo • E’ gratis entro certi limiti • SDK e diversi linguaggi per
sviluppare le applicazioni • Ottimo per start-up e
sviluppatori individuali
• Nessun multithread • Nessun accesso al file system • Possibile Lock-in • Alcune funzioni non permesse • Costoso per carichi costanti • Necessario ottimizzare per
contenere costi (anche un pro) • Limite Esecuzione 60 secondi
per richiesta (10 min se task)
La rapidità e la semplicità nello sviluppo lo rendono particolarmente adatto a piccole realtà, come Start-up, Piccoli Team e Sviluppatori Individuali, i costi al consumo e la base gratuita, permettono al contempo di ottenere facilmente un prodotto di qualità, con risultati difficilmente raggiungibili negli stessi tempi ed agli stessi costi
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
Domande?
30
Siti ed Applicazioni Web nel Cloud: piccoli team e sviluppatori individuali, approcci e casi d’uso
GRAZIE A TUTTI!Info e slide verranno pubblicate su Google+ e SlideShare. !plus.google.com/+2dwebIt !Oppure segui il mio Blog: http://2dwebit.blogspot.com
31