From Functions-as-a-Service to Backend-as-a-Service, even Big Data-as-a-Service, Serverless is taking many different shapes. Learn what these mean and how Google Cloud Platform is building technology to make sure there's nothing standing between you and running your code. You'll see live demos of integration between Firebase, Cloud Functions, Cloud Pub/Sub (and even machine learning) to build autoscaling apps in record time - all without managing servers or application runtimes.
Bret is on the Google Cloud Platform team at Google, focusing on serverless products like Google Cloud Functions, App Engine, Firebase, machine learning APIs, and more. He's often on the running trail, volleyball court or kickball field.
10. App Engine - PaaS
Easy to manage
Fully managed
No patches/updates
24x7 Google SREs
Autoscaling
Easy to develop
Build and test locally
Focus on app code
Versioning
Traffic splitting
Choice of runtimes
Java
Python
Go
PHP
Custom (Node.js, Ruby)
11. On the road to serverless
Stop for snacks at the
PaaS station
21. Hello, HTTP!
Write a serverless backend with
just a few lines of code:
●
●
●
●
// This should look familiar...
exports.hello = functions((req, res) => {
res.status(200).send(‘Howdy Serverless fans!’);
});
Howdy, Serverless fans!
22. Deploy from
Cloud Console UI
$ gcloud functions deploy myFunc
--stage-bucket functions-src
--trigger-http
Command line
Local emulator
29. *aaS decisions
App Engine (Paas)
Scales at app
Per minute billing
Cloud Endpoints integration
Multiple code languages
Traffic splitting/versioning
Cloud Functions (Faas)
Scales at function
Usage-based billing
Event-triggered
Node.js
APIs
30. Should I go serverless with Cloud Functions?
Existing monolithic applications
Long-running compute tasks
Guaranteed response times (synchronous)
Stateless / ephemeral
41. @bretmcg
BigQuery
Managed big data analytics warehouse
● Fast: terabytes in seconds
● Simple: SQL
● Interoperable: Java, Python, Tableau, R…
● Instant data sharing
● Free monthly quota - 1 TB
42. @bretmcg
Cloud Pub/Sub
Designed for
fast data
Provides reliable, real-time,
many-to-many,
asynchronous messaging
between applications
Send data into processing
pipelines and out to other
apps, devices and Google
Cloud Services
Global by design and highly
available. ‘fire-and-forget’
with minimal latency
Redundant forwarding paths
Designed for
Google scale
Reliable and
Real-time messaging
44. Serverless with Google
USE CASE SERVERLESS WITH GOOGLE
Mobile apps Firebase
Web clients Firebase
Web backend App Engine Standard -> Datastore
Microservices Cloud Functions -> Datastore
Bots Cloud Functions
IoT device messages Cloud Pub/Sub -> Dataflow
NoSQL database Cloud Datastore
ETL Cloud Dataflow -> BigQuery
Blob file storage Cloud Storage
Analytics warehouse (SQL) BigQuery
Personalization Cloud Machine Learning Engine
@bretmcg
45. @bretmcg
Scale down to $zero*
Zero upfront provisioning
*storage
Manage zero servers
Serverless on Google Cloud
46. What we learned
● What is serverless?
● Serverless on Google Cloud
● Compare *aaSes
○ PaaS - App Engine
○ FaaS - Google Cloud
Functions
○ BaaS - Firebase
○ Managed services
● What to use?