introduzione a firebase cloud functions
TRANSCRIPT
Boris D’Amato - [email protected]
Boris D’AmatoAndroid Developer @
+BorisDAmato
@borisdamato
damatoboris
borisdamato
Boris D’Amato - [email protected]
Firebase Cloud Functions - Boris D’Amato
Cloud Function for Firebase
Cloud Functions è un ambiente Node.js remoto, privato e scalabile sul quale è possibile eseguire codice JavaScript.
L’SDK Firebase per Cloud Functions si integra con l’intera piattaforma Firebase permettendo di scrivere codice che risponde ad eventi e richiama funzionalità esposte da altri servizi Firebase.
Cos’è?
Firebase Cloud Functions - Boris D’Amato
Perché Cloud Functions?
Zero Manutenzione
Niente più credenziali, configurazioni dei server, aggiunta di nuovi server e rimozione di server vecchi, è tutto gestito automaticamente sui server Google.
Effettua il deploy del codice sui server Google con un solo comando da riga di comando.
Firebase riconosce i pattern di utilizzo degli utenti ed è in grado di adeguare le risorse computazionali allocate di conseguenza.
Firebase Cloud Functions - Boris D’Amato
Perché Cloud Functions?
Logica privata e sicura
Nessun comportamento anomalo: la logica eseguirà sempre quello che ci si aspetta non potendo essere influenzata dal dispositivo o da altre specifiche del client.
Logica del tutto invisibile da parte dell’utente.
Nessuna possibilità di reverse engineering lato client trattandosi di logica server-side.
Firebase Cloud Functions - Boris D’Amato
Perché Cloud Functions?
Integrazione con la Piattaforma Firebase
Le funzioni minimizzano il codice di boilerplate facilitando l’utilizzo di Firebase e Google Cloud all’interno delle proprie Cloud function.
Le funzioni possono rispondere ad eventi generati da funzionalità Firebase come database, storage o eventi generati dai Google Cloud Services.
E’ possibile integrarsi con servizi di terze parti scrivendo propri webhooks.
Firebase Cloud Functions - Boris D’Amato
Come funziona?
Come funziona?
{…}
Built-in Autoscaling
Firebase Cloud Functions - Boris D’Amato
Cosa posso farci?
Notificare gli utenti quando accade qualcosa di interessante
{…}
Firebase Cloud MessagingFirebase Realtime Database
Firebase Cloud Functions - Boris D’Amato
Cosa posso farci?
Effettuare sanitization e manutenzione del Realtime DB
{…}
Messaggio in arrivo
Messaggio elaborato
Firebase Cloud Functions - Boris D’Amato
Cosa posso farci?
Eseguire operazioni dispendiose di risorse
{…}
Firebase Cloud Storage
Salvataggio nuova immagine
Scrittura posizione
DEMO
Firebase Cloud Functions - Boris D’Amato
Cloud Functions Codelab
Firebase Cloud Functions - Boris D’Amato
https://codelabs.developers.google.com/codelabs/firebase-cloud-functions
Cloud Functions Sampleshttps://github.com/firebase/functions-samples
Firebase Cloud Functions - Boris D’Amato
Costi
SPARK FLAME BLAZE
Invocazioni 125.000/mese 2.000.000/mese $0,40/milione
GB-secondi 40.000/mese 400.000/mese $0,0025/migliaio
CPU-secondi 40.000/mese 200.000/mese $0,01/migliaio
Traffico esterno Google-only 5GB/mese $0,12/GB
GRATIS $25/mese In base all’utilizzo Source