Case Studies, with
...and why you should use the cloud for your application needs
Weiyuan Liu
GDE, Google Cloud
Director Of Engineering, ZilLearn
Title safe
Action safe
Title safe
Action safe
Title safe
Action safe
Title safe
Action safe
Title safe
Action safe
Title safe
Action safe
Title safe
Action safe
It’s overwhelming … but you don’t have to use everything
Title safe
Action safe
Title safe
Action safe
“Live streaming” with
Case study I
Title safe
Action safe
Problem Statement
Title safe
Action safe
Problem Statement
Title safe
Action safe
Solutions #1 - Streaming solutions - Facebook, Twitch
Solutions #2 - Free Open Source Solutions (OBS)
Solutions #3 - Streamyard
What if we just improve the current solution?
Title safe
Action safe
Solutions #3! - Streamyard + DIY
And more...
Title safe
Action safe
Solutions #3!! - “Anything” + DIY
And more...
Some RTMP Stream�(e.g. Streamyard, Zoom, Google Meet)
Title safe
Action safe
How?
Title safe
Action safe
Architectural Diagram (Intention)
RTMP Stream�(e.g. Streamyard)
And more...
RTMP Stream Mux
Title safe
Action safe
Architectural Diagram (Compute Solutions?)
RTMP Stream�(e.g. Streamyard)
And more...
Serverless?
FaaS?�IaaS?
Serverless - Easier to scale, maintain, harder to customize (Cloud Run, App Engine, Cloud Functions)��IaaS - Easier to customize, harder to maintain (Compute Engine)
Title safe
Action safe
Architectural Diagram (Compute Solutions?)
RTMP Stream�(e.g. Streamyard)
And more...
Serverless?
FaaS?�IaaS?
Serverless - Easier to scale, maintain, harder to customize (Cloud Run, App Engine, Cloud Functions)��IaaS - Easier to customize, harder to maintain (Compute Engine) NEED RTMP to be supported!
Title safe
Action safe
Architectural Diagram (Compute Solution)
RTMP Stream�(e.g. Streamyard)
And more...
VM Instance
Compute Engine
Title safe
Action safe
Architectural Diagram (Compute Solution)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module
Compute Engine
Title safe
Action safe
Nginx
Stunnel
… and Node
Title safe
Action safe
Architectural Diagram (Compute Solution)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module
Compute Engine
Title safe
Action safe
Architectural Diagram (Networking?)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module� (Port: 1935)
Compute Engine
Title safe
Action safe
Architectural Diagram (Networking?)
Is it easy to use?
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module� (Port: 1935)
Compute Engine
Cloud Network
Title safe
Action safe
Architectural Diagram (Containerization)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Title safe
Action safe
COS
Title safe
Action safe
Architectural Diagram (Containerization)
Where to build the image?
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Title safe
Action safe
Architectural Diagram (CICD)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Title safe
Action safe
cloudbuild.yaml
Title safe
Action safe
Architectural Diagram (CICD)
What about secrets?
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Title safe
Action safe
Architectural Diagram (Secrets?)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Title safe
Action safe
Secret management
Title safe
Action safe
Architectural Diagram (Secrets)
What about access control?
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Title safe
Action safe
Architectural Diagram (Access Control)
Backing up the stream?
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1953)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Cloud IAM
Title safe
Action safe
Architectural Diagram (Backup)
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Cloud IAM
Backup video files
Cloud Storage
Title safe
Action safe
Cloud Storage Bucket
Title safe
Action safe
Architectural Diagram
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Cloud IAM
Backup video files
Cloud Storage
Title safe
Action safe
Are you sure it’s easy to set it up?
Title safe
Action safe
Architectural Diagram
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Cloud IAM
Backup video files
Cloud Storage
Deployment Manager
Title safe
Action safe
Deployment Config
Initialization Shell Script
Title safe
Action safe
Architectural Diagram
RTMP Stream�(e.g. Streamyard)
And more...
NGINX Server,
RTMP module (Port: 1935)�Container-Optimized OS
Compute Engine
Cloud Network
Container-Optimized OS
Container Registry
Image Registry
Cloud Build
CICD Pipeline
Secret Manager
Secret + config repository
Cloud IAM
Backup video files
Cloud Storage
Deployment Manager
Title safe
Action safe
End Result
Title safe
Action safe
Billing
Take note of your free quotas! - https://cloud.google.com/free
Title safe
Action safe
Compute Engine
Cloud Network
Container Registry
Cloud Build
Secret Manager
Cloud IAM
Cloud Storage
Deployment Manager
Container-Optimized OS
Hosting Solution
Network Solution
Access Control
Storage Solution
Developer Tools
Now
Future
Title safe
Action safe
Where do I start?
Title safe
Action safe
“Conference Submissions” with
Case study II
Title safe
Action safe
Problem Statement
Title safe
Action safe
Problem Statement
Needed a cheap and easy to setup “conference submission tool”
What we have:
What we need:
Title safe
Action safe
Architectural Diagram
Web Browsers
Cloud Run�(Serverless solution)�(Runs with Docker images)
Artifact Registry
Image Registry
Secret Manager
Secret + config repository
Cloud IAM
Cloud Run
Cloud SQL
Database
Title safe
Action safe
Title safe
Action safe
Time costs:
Title safe
Action safe
Monetary costs (ignoring credits):
$2.09- 3.5 days
~ $18 - 30 days
Take note of your free quotas! - https://cloud.google.com/free
Title safe
Action safe
Take note of your free quotas! - https://cloud.google.com/free
Title safe
Action safe
References
Title safe
Action safe
Title safe
Action safe
Questions?
Title safe
Action safe
Title safe
Action safe