Upload
christian-rizza
View
214
Download
2
Embed Size (px)
DESCRIPTION
Introduzione alla Google Cloud Platform e Google App Engine
Citation preview
+ChristianRizza
Caso DOOMLa prima versione ufficiale di Doom è
stata pubbicata intorno alla mezzanotte
del 10 dicembre 1993
pochi minuti dopo, l'enorme numero di
utenti che cercavano di scaricare in
contemporanea il file provocò il crash del
sistema.
Nei primi cinque mesi dall'uscita, la
versione shareware è stata prelevata da
1,5 milioni di persone
… era il 1993
+ChristianRizza
Caso Diablo III
"Stiamo risolvendo i
problemi legati a login e
creazione del personaggio
dovuti al traffico. Abbiamo
aggiunto nuovi server e
messo i nostri website
offline"
… era il 2012
+ChristianRizza
E se la nostra App avesse successo?
• Quanti richieste riesce a servire
contemporaneamente ?
• E se dovessimo elaborare dei dati?
• Quanto spazio richiedono i nostri dati?
• Scalabilità orizzontale o verticale?
• …
+ChristianRizza
Google Cloud Platform
• La piattaforma di Google offre diversi
prodotti
+ChristianRizza
Google App Engine
• Infrastruttura semplice da gestire
• Scalabile per siti e/o applicazioni web
• Utile per backend e frontend
• Caratteristiche principali:
+ChristianRizza
Google Compute Engine
• Fornisce un sistema di cloud computing basato su macchine
GNU/Linux interconnesse
• Utile per processi batch e per l’analisi massiva di dati
• Caratteristiche Principali:
+ChristianRizza
Google Cloud Storage
• Garantisce un’infrastruttura di storage con accesso via REST API
• Fornisce supporto per dati critici e funzionalità di backup dei dati
• Caratteristiche Principali:
+ChristianRizza
Google Big Query
• Permette l’analisi dei dati in real-time
• Valuta i trend attraverso SQL e tool interattivi
• Evita qualsiasi tipo di installazione server
• Caratteristiche Principali:
+ChristianRizza
Google Cloud SQL
• Fornisce database relazionali MySql nel cloud
• Include servizi di gestione e amministrazione e replicazione dei
dati
• Caratteristiche Principali:
+ChristianRizza
Google Cloud Datastore
• Permette l’utilizzo di database non relazionali
• Completamente scalabile
• Caratteristiche principali:
+ChristianRizza
Google App Engine
• Piattaforma di hosting e di sviluppo
• Utilizza la stessa infrastruttura di Google
• Ottima garanzia di funzionamento e scalabilità
• Se molto ricco di API attraverso
• Java
• Python
• PHP
• Go
• Possibilità di deploy locale
+ChristianRizza
Servizi
• Integrazione con Google Accounts
• URL fetch
• Memcache
• Image Manipulation
• Task schedulati
+ChristianRizza
Quote e Costi
• È possibile utilizzare le quote gratuite
• Fino a 1 GB di storage di tipo NOSQL con Google Datastore
• Fino a 5 milioni di pagine visitate al mese
• È possibile registrare fino a 10 applicazioni differenti
• Nel servizio a pagamento google garantisce il 99,95% di SLA
(Service Level Agreement)
• Oltre le quote
• Superando le quote il "servizio relativo" viene sospeso
• È possibile acquistare risorse aggiuntive per superare le quote o far
fronte a carichi di lavoro improvvisi
+ChristianRizza
Ambiente di Sviluppo
• Google App Engine mette a disposizione il supporto
per lo sviluppo in Java, Python, PHP e Go
• Configurazione per lo sviluppo Java• L’SDK di App Engine
• Installazione JDK 1.7
• Eclipse con Google Plugin
+ChristianRizza
Google Cloud Console
• La console ci permette di
• Gestire le impostazioni dell’applicazione (Info, Servizi collegati)
• Gestire le performance delle applicazioni (Cpu, Memory, Pending
Latency)
• Visualizzare e configurare tutti i servizi Cloud (utilizzati e non)
• Gestire gli host collegati all’app
• Gestire il datastore (backup e replicazione)
• Gestire le istanze della propria applicazione (in base a QPS)
+ChristianRizza
Getting Started
• Google offre diversi strumenti per poter iniziare a
sviluppare applicazioni sul cloud.• Documentazione
• Tutorial
• Esempi
• All’interno della console esistono diversi progetti pronti da
deployare sul cloud e da scaricare per poterne studiare il
funzionamento
• Cosa aspettate?
+ChristianRizza
Passi da seguire
• Configurare l’ambiente di sviluppo (Java, Php, Python e Go)
• Creare l’applicazione in locale
• Utilizzare i servizi messi a disposizione dalla piattaforma
• Pubblicare su Google Cloud
• Gestire la propria applicazione tramite console!
Grazie per l’attenzione
Email: [email protected]
Sitoweb: www.e-ludo.it
G+: +ChristianRizza
Christian Rizza