Introduzione a Firebase Cloud Functions

14
Boris D’Amato - [email protected]

Transcript of Introduzione a Firebase Cloud Functions

Page 1: Introduzione a Firebase Cloud Functions

Boris D’Amato - [email protected]

Page 2: Introduzione a Firebase Cloud Functions

Boris D’AmatoAndroid Developer @

+BorisDAmato

@borisdamato

damatoboris

borisdamato

Boris D’Amato - [email protected]

Page 3: Introduzione a Firebase Cloud Functions

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’è?

Page 4: Introduzione a Firebase Cloud Functions

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.

Page 5: Introduzione a Firebase Cloud Functions

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.

Page 6: Introduzione a Firebase Cloud Functions

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.

Page 7: Introduzione a Firebase Cloud Functions

Firebase Cloud Functions - Boris D’Amato

Come funziona?

Come funziona?

{…}

Built-in Autoscaling

Page 8: Introduzione a Firebase Cloud Functions

Firebase Cloud Functions - Boris D’Amato

Cosa posso farci?

Notificare gli utenti quando accade qualcosa di interessante

{…}

Firebase Cloud MessagingFirebase Realtime Database

Page 9: Introduzione a Firebase Cloud Functions

Firebase Cloud Functions - Boris D’Amato

Cosa posso farci?

Effettuare sanitization e manutenzione del Realtime DB

{…}

Messaggio in arrivo

Messaggio elaborato

Page 10: Introduzione a Firebase Cloud Functions

Firebase Cloud Functions - Boris D’Amato

Cosa posso farci?

Eseguire operazioni dispendiose di risorse

{…}

Firebase Cloud Storage

Salvataggio nuova immagine

Scrittura posizione

Page 11: Introduzione a Firebase Cloud Functions

DEMO

Firebase Cloud Functions - Boris D’Amato

Page 12: Introduzione a Firebase Cloud Functions

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

Page 13: Introduzione a Firebase Cloud Functions

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

Page 14: Introduzione a Firebase Cloud Functions

Grazie!

Firebase Cloud Functions - Boris D’Amato

[email protected]