SlideShare a Scribd company logo
1 of 100
Download to read offline
@BretMcG
Bret McGowen
Google
Developer Advocate
@BretMcG
Where to run your
code in the cloud
Serverless, containers, or
virtual machines
@BretMcG
Who are you?
Mobile? Web? Students? Enterprise? Startup? Just learning? Using any
cloud? Google Cloud? Serverless? Kubernetes?
@BretMcG
Virtual machines
Containers & Kubernetes
Platform as a Service
Serverless Functions
@BretMcG
Quiz time!
@BretMcG
Quiz time!
Cloud Functions
App Engine
Kubernetes Engine (GKE)
Compute Engine
@BretMcG
Cloud Functions
App Engine
Kubernetes Engine (GKE)
Compute Engine
event driven
web facing code
containerized
applications
existing systems, special
hardware (GPU, GPU)
tl;dr
@BretMcG
Select
IaaS
OS
Setup
Containerization
Storage
Container
Orchestration
Networking
Monitoring
Logging
Testing
Developer User
What’s so hard about app development?
@BretMcG
OS
Application
Runtime
Application
Hardware
Functions
Application
infrastructure
@BretMcG
@BretMcG
Virtual Machine
OS
Application
Runtime
Application
Hardware
Dedicated Server
OS
Application
Runtime
Application
Hardware
Containers
OS
Application
Runtime
Application
Hardware
Functions Functions Functions
Application Platform
OS
Application
Runtime
Application
Hardware
Functions
Serverless
OS
Application
Runtime
Application
Hardware
Functions
Infrastructure Container Platform Function
Compute Engine Kubernetes Engine App Engine Cloud Functions
On-Premises
Highly customizable Highly managed
@BretMcG
Don't stress about
the "wrong"
decision
@BretMcG
Virtual
Machines
Google Compute Engine
Infrastructure as a Service
// Require the Stripe library w/ secret key.
const stripe = require('stripe')('sk_key...');
// Create a payment from a test card token.
const charge = await stripe.charges.create({
amount: 2000,
currency: 'usd',
source: 'tok_amex',
description: 'My first payment'
});
@BretMcG
Virtual
Machines
Google Compute Engine
Infrastructure as a Service
@BretMcG
@BretMcG
Dedicated Server
OS
Application
Runtime
Application
Hardware
Containers
OS
Application
Runtime
Application
Hardware
Functions Functions
Application Platform
OS
Application
Runtime
Application
Hardware
Functions
Serverless
OS
Application
Runtime
Application
Hardware
Functions
Container Platform Function
Kubernetes Engine App Engine Cloud Functions
On-Premises
Virtual Machine
OS
Application
Runtime
Application
Hardware
Functions
Infrastructure
Compute Engine
Highly customizable Highly managed
@BretMcG
Virtual machines and networking
● Per VM max: 160 CPUs, 3,844 GB of RAM, 64 TB of
disk, 96 GPUs, TPUs
● Independently configurable, including disk!
● Sole tenant nodes
Start quickly, ~20 seconds to user code running
Pre-built images, or create your own
● Debian, CentOS, CoreOS, Ubuntu, RHEL, SUSE
● Windows Server Datacenter: 2008, 2012 R2, 2016
What is Compute Engine?
Run your software
@BretMcG
Disk
Persistent Disk
● Live resize
● Network based
● Configure size (to 64 TB)
● Disk or SSD
● Independent of VM
Global Snapshots
Multi-VM RO mount
● Larger disks == more throughput
Local SSD
● Lowest latency
● 375 GB per disk (up to 8)
● Tied to VM lifecycle
@BretMcG
More than just virtual machines
Can run Docker containers directly on Container Optimized OS
Managed Instance Groups
● template / image based
● autoscaling
● regional groups (multi-zone)
● rolling updates and canaries
Load Balancer --> Google Front End, 1M QPS
@BretMcG
What do you think about?
Your software
Updating your software
Operating system / disk images
CPU, RAM, Disk
Networking
● Firewall rules
● Load balancers
● VPNs
@BretMcG
Good fit? Constraints?
Good fit
Existing systems (lift and shift)
1:1 container:VM mapping
Specific OS / kernel required
License requirements
Running databases
Network protocols beyond HTTP/S
Constraints
Scaling speed floor
~20s per VM, 1000s in ~60s
Decide how to handle software
updates yourself
@BretMcG
Demo
@BretMcG
Why Compute Engine?
Consistency - ask for 10 VMs, you get 10 good VMs
Custom VMs - choose RAM and CPU, GPUs
Live disk resize - also any size disk on any machine
Billing - Sustained use discounts, preemptible VMs, per minute billing
Live migrations - your VMs stay up longer
Architecture - good fit for most existing systems
BTW, we run services on GCE, too.
@BretMcG
Learn more
cloud.google.com/compute
@BretMcG
@BretMcG
Hello
world!
Hello
world!
Hello
world!
Hello
world!Hello
world! Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Image by Connie Zhou
Hello
world!
Hello
world!
Hello
world! Hello
world!
Hello
world! Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world! Hello
world!
Hello
world! Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world!
Hello
world! Hello
world!
Hello
world! Hello
world!
Hello
world!
Hello
world!
Google
Kubernetes
Engine (GKE)
Managed Kubernetes
or Containers as a Service
@BretMcG
@BretMcG
Dedicated Server
OS
Application
Runtime
Application
Hardware
Functions
Application Platform
OS
Application
Runtime
Application
Hardware
Functions
Serverless
OS
Application
Runtime
Application
Hardware
Functions
Platform Function
App Engine Cloud Functions
On-Premises
Virtual Machine
OS
Application
Runtime
Application
Hardware
Functions
Infrastructure
Compute Engine
Containers
OS
Application
Runtime
Application
Hardware
Functions
Container
Kubernetes Engine
Highly customizable Highly managed
@BretMcG
Containers?
Kubernetes?
Kubernetes Engine?
@BretMcG
kernel
libs
app
app app
app
Shared machines
x
x
x
No isolation
Common libs
Highly coupled apps & OS
x
libs
app
kernel
libs
app
libs
app
libs
app
Containers
Isolation
No common libs
Less overhead
Less dependency on host OS
Evolution of app infrastructure
x
x
app
libs
kernel
libs
app app
kernel
app
libs
libs
kernel
kernel
Virtual Machines
Isolation
No common libs
Expensive and inefficient
Hard to manage
@BretMcG
What are containers?
Performance
Repeatability
Isolation
Portability
...and more!
A fundamentally different way of managing applications
@BretMcG
# Dockerfile
FROM python
ENV APP_HOME /app
COPY . $APP_HOME
WORKDIR $APP_HOME
RUN pip install Flask
CMD ["python", "app.py"]
@BretMcG
I've got a bunch of apps/services
running in containers. Now what?
Kubernetes is open source and the
de facto platform for running containers.
@BretMcG
Kubernetes handles...
Scheduling:
Decide where my containers should run
Lifecycle and health:
Keep my containers running despite failures
Scaling:
Make sets of containers bigger or smaller
Naming and discovery:
Find where my containers are now
Load balancing:
Distribute traffic across a set of containers
Storage volumes:
Provide data to containers
Logging and monitoring:
Track what’s happening with my containers
Debugging and introspection:
Enter or attach to containers
Identity and authorization:
Control who can do things to my containers
@BretMcG
Making your app robust
Kubernetes keeps your applications running while you're asleep.
● Container died?
○ Restart it.
● Container unhealthy?
○ Reschedule to another node.
● Container overloaded?
○ Add more replicas automatically.
@BretMcG
C
BA
D
@BretMcG
C
BA
D
@BretMcG
C
BA
D
@BretMcG
B
C
A
D
B
@BretMcG
What do you think about?
Logical infrastructure
Applications, not computers or containers
Whiteboarding view
● What programs?
● How are they connected?
● Where do they store state?
@BretMcG
Good fit? Constraints?
Good fit
Run app in multiple environments
● Clouds, hybrid, dev/test/prod
Take full advantage of containers
Have good team communication
● Between dev, ops, security, etc.
Have or want CI/CD pipeline
Network protocols beyond HTTP/S
Constraints
Must use containers
Licensing (ex: per-machine)
Some architectural constraints
@BretMcG
Kubernetes
demo
@BretMcG
Learn more
cloud.google.com/gke
@BretMcG
Developers using Kubernetes still have a lot to do
Have to do
Write code
Build docker image
Upload image to registry
Deploy service
Expose to the internet
Setup logging & monitoring
Scale workload
Want to do
Write code
@BretMcG
It's not the right abstraction for end-developer experience.
(This did not stop developers from using Kubernetes directly!)
But it's a great platform for building a PaaS on top of.
Kubernetes isn't actually for developers
@BretMcG
Developer-focused:
let's get serverless
@BretMcG
Principles of
serverless
Invisible infrastructure
Automatic scaling
No paying for unused
CPU cycles
@BretMcG
Google App
Engine
Let us run & scale your code
or Platform as a Service
@BretMcG
@BretMcG
Dedicated Server
OS
Application
Runtime
Application
Hardware
Functions
Serverless
OS
Application
Runtime
Application
Hardware
Functions
Function
Cloud Functions
On-Premises
Virtual Machine
OS
Application
Runtime
Application
Hardware
Functions
Infrastructure
Compute Engine
Containers
OS
Application
Runtime
Application
Hardware
Functions
Container
Kubernetes Engine
Application Platform
OS
Application
Runtime
Application
Hardware
Functions
Platform
App Engine
Highly customizable Highly managed
@BretMcG
What is App Engine?
App Engine goal: let developers focus on code, while we handle the rest
“Serverless” before it was cool ;)
Started in 2008, with tradeoff: write it this way, we'll scale for you
Geared toward HTTP/web-facing applications
Can scale very quickly
@BretMcG
App Engine Standard (2nd gen)
● Open-source, idiomatic experience
● Use any extension, binary, or framework
● Supported Runtimes
○ Python 3.7
○ Java 8
○ Node.js 8, and Node.js 10 (beta)
○ PHP 7.2 (beta)
○ Go 1.11
@BretMcG
App Engine
Standard (2nd gen)
● Open-source, idiomatic experience
● Use any extension, binary, or framework
● Supported Runtimes
○ Python 3.7
○ Java 8
○ Node.js 8, and Node.js 10 (beta)
○ PHP 7.2 (beta)
○ Go 1.11
App Engine
Flexible
● Runs Docker containers
● Open source runtimes for Node.js, Ruby,
Java, Python, Go, PHP, .NET
● Also, if it runs in a Docker container,
you can run it ← nearly everything
@BretMcG
App Engine runtimes
Standard Standard 2nd generation
(soon!)
Flexible
Python 2.X, Java, PHP, Go Node.js 8 & 10, Python 3.7,
Go 1.11, PHP 7.2,
Node.js, Ruby, Java, Python,
Go, PHP, .NET
& custom container images
Sandboxed processes Runs on managed VMs
GAE specific APIs + GCP APIs Use GCP APIs directly
No binary modules/libraries any extension, binary, or framework
open-source, idiomatic experience
@BretMcG
What do you think about?
Code
HTTP Requests
Versions
@BretMcG
Good fit? Constraints?
Good fit
HTTP/S request-response
Stateless serving applications
Scaling to high traffic
Constraints
Standard (1st gen)
● Runtimes for Python, Java, PHP, Go, Node
Standard (2nd gen)
● Can use use binary extensions
● Python, Node, Java, Go
Flexible runtimes
● Inherit Docker constraints
● Not best for very low traffic sites
@BretMcG
Why App Engine?
Developers focus on code, while we handle the rest
Optimized for web serving workloads
Especially great for variable load
App Engine currently serves more than 320B requests per day
@BretMcG
App Engine:
Now Serving
320 Billion
requests per day
@BretMcG
App Engine
Demo
@BretMcG
Learn more
cloud.google.com/appengine
@BretMcG
Cloud
Functions
Event-driven functions
@BretMcG
@BretMcG
Dedicated Server
OS
Application
Runtime
Application
Hardware
Functions
On-Premises
Virtual Machine
OS
Application
Runtime
Application
Hardware
Functions
Infrastructure
Compute Engine
Containers
OS
Application
Runtime
Application
Hardware
Functions
Container
Kubernetes Engine
Application Platform
OS
Application
Runtime
Application
Hardware
Functions
Platform
App Engine
Serverless
OS
Application
Runtime
Application
Hardware
Functions
Function
Cloud Functions
Highly customizable Highly managed
@BretMcG
@BretMcG
Back end code functions that automatically
run in response to a trigger event
Microservices
Cloud "glue"
Node.js, Python, Go
Cloud Functions
@BretMcG
@BretMcG
Cloud Function event triggers
Cloud storage (incl. Firebase)
Cloud Pub/Sub
HTTPS
Firebase realtime database
& the new Firestore database
Firebase authentication
Google analytics for Firebase
Firebase hosting
Firebase Crashlytics
@BretMcG
Cloud Functions?
A serverless environment to build and connect cloud services
Event driven - connect Cloud services
● Via: HTTP requests, Cloud Storage, Firestore, Firebase events, and Cloud Pub/Sub
Serverless
● Fully managed execution environment
● Pay only for what you use
● Autoscales with usage
Node.js 6, 8, Python 3.7 (beta), Go 1.11 (beta)
Serverless Containers on GCF: sign up: g.co/serverlesscontainers
@BretMcG
What do you think about?
Events
Function definitions
@BretMcG
Good fit? Constraints?
Good fit
“Serverless”
Using Pub/Sub and/or Cloud Storage
Don't want to think about runtime env
Data transformations (ETL)
Cloud-based HTTP glue
Constraints
Two runtimes today: JS on Node.js and
Python
Function level granularity
Must interact via events
@BretMcG
Why Cloud Functions?
Don't have to even think about servers
Pay only for what you use
Simple developer experience (deploy functions not apps)
@BretMcG
Cloud Storage trigger
Cloud Storage
@BretMcG
Cloud Storage Cloud Functions
Cloud Storage trigger
@BretMcG
Cloud Storage Cloud Functions Cloud Vision API
Cloud Storage trigger
@BretMcG
Cloud Storage Cloud Functions Cloud Vision API
Cloud Storage trigger
@BretMcG
Cloud
Functions
demo
@BretMcG
@BretMcG
@BretMcG
Serverless containers
Secure on gVisor
Fully managed
BYO workloads
Pay for use & stateless
Alpha invitations coming
later this year
Sign up: g.co/serverlesscontainers
New: serverless containers on GCF (EAP)
@BretMcG
Containers on
Cloud Functions
demo
@BretMcG
@BretMcG
Join the Alpha:
g.co/serverlesscontainers
@BretMcG
Learn more
cloud.google.com/functions
@BretMcG
Where should I run my code?
@BretMcG
It depends
@BretMcG
Let's help you decide
@BretMcG
Recap - what do you think about?
Events
Function definitions
Code
HTTP Requests
Applications, not computers or containers
What programs? How are they connected? State?
Your software, operating system / disk images
CPU, RAM, Disk
Networking: Firewall rules, Load balancers, VPNs
Cloud Functions
App Engine
Kubernetes Engine
Compute Engine
@BretMcG
Technical requirements pull you down the stack
GPUs, need specific kernel, Windows,
software licensing requirements, migrating
most existing systems
Hybrid, need specific OS, network protocols
beyond HTTP/S
Support any programming language, run in
containers
Cloud Functions
App Engine
Kubernetes Engine
Compute Engine
@BretMcG
Team and organization
Team is mostly dev focused
Team is mostly dev focused
Team integration: Dev, Ops, Security work together;
org is open to app architecture updates
Adaptable to various team structures and tool
preferences
Cloud Functions
App Engine
Kubernetes Engine
Compute Engine
@BretMcG
Unsure? Containers let you move between
layers
Cloud Functions
App Engine
(2nd gen & Flex)
Kubernetes Engine
Compute Engine
(soon!)
@BretMcG
Most systems use multiple services
@BretMcG
Built-in integrations
@BretMcG
Actions
on Google
@BretMcG
Kubernetes vs Cloud Functions
@BretMcG
@BretMcG
Reasons for using Kubernetes vs serverless
Reduce lock-in
Performance
Multi-cloud
Customizability
Use custom hardware (GPU, TPU, IoT, etc)
Offline/reduced connectivity
Existing on-prem infrastructure
@BretMcG
App Engine vs Cloud Functions
@BretMcG
@BretMcG
Helping you decide: monoliths vs microservices
Choose the right
primitive for the
workload, or change
the workload
My Big
Java
Monolith
My Big
Java
Monolith
No!
Maybe
My
Discrete
Services
Yes!
✓
@BretMcG
Detour: Serverless Concurrency & Billing
Two Predominant Models:
1. Functions (Single Concern)
Billed per request, independent of instance
2. Apps (Multiple Concerns)
Billed per instance, independent of request
A Function (#1) model implies single concurrent
requests per instance!
@BretMcG
Detour: Cold Start Frequency vs
Duration
ColdStartDuration
Cold Start Frequency
App
Function
@BretMcG
Detour: Single vs Multi-purpose
App Function
Multi Purpose
Some Shared State
Multi-concurrent
Single Purpose
No Shared State
Single-concurrent
@BretMcG
Lifecycle: Compute Time & Threads
The App model bills for the lifetime of an instance,
handles concurrent requests and accommodates
for compute time outside the scope of a request
The Function model bills for the lifetime of a
request, handles a single concurrent request and
assumes a freeze/thaw model where compute time
is not available outside the scope of the request
@BretMcG
Why not add one more option?
@BretMcG
Kubernetes
• Powerful
• Can be Scary
Serverless
• Higher-level abstraction
• Similar in concept, but a lot
friendlier and easier to manage
Kubernetes
and Serverless
@BretMcG
● OSS project on GitHub, Apache 2 license
● Set of primitives (Build, Events, Serving)
● Solves for modern development patterns
● Implements learnings from Google, partners
● In collaboration with OSS FaaS frameworks
● github.com/knative
Kubernetes-based
platform to build,
deploy, and manage
modern serverless
workloads
Bonus: Introducing Knative
@BretMcG
SO WHAT SHOULD I CHOOSE?
@BretMcG
WELL IT DEPENDS ON YOUR APP
@BretMcG
SERIOUSLY IT DEPENDS
@BretMcG
JUST RECOMMEND SOMETHING
ALREADY
@BretMcG
OK FINE. Start with App Engine Standard (2nd gen)
Web apps or APIs
Idiomatic for each language
Stateless
Scales to zero
Scales up very quickly
Node 8, 10
Python 3.7
Go 1.11
Java 8
PHP 7.2
@BretMcG
Thank you
Bret McGowen
@BretMcG
cloud.google.com/compute
cloud.google.com/gke
cloud.google.com/appengine
cloud.google.com/functions
g.co/serverlesscontainers

More Related Content

What's hot

GDG Heraklion - Architecting for the Google Cloud Platform
GDG Heraklion - Architecting for the Google Cloud PlatformGDG Heraklion - Architecting for the Google Cloud Platform
GDG Heraklion - Architecting for the Google Cloud PlatformMárton Kodok
 
What is Google Cloud Platform - GDG DevFest 18 Depok
What is Google Cloud Platform - GDG DevFest 18 DepokWhat is Google Cloud Platform - GDG DevFest 18 Depok
What is Google Cloud Platform - GDG DevFest 18 DepokImre Nagi
 
Importance of GCP: 30 Days of GCP
Importance of GCP: 30 Days of GCPImportance of GCP: 30 Days of GCP
Importance of GCP: 30 Days of GCPAnshTyagi27
 
GDG Jakarta Meetup - Streaming Analytics With Apache Beam
GDG Jakarta Meetup - Streaming Analytics With Apache BeamGDG Jakarta Meetup - Streaming Analytics With Apache Beam
GDG Jakarta Meetup - Streaming Analytics With Apache BeamImre Nagi
 
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017Introduction to gRPC - Mete Atamel - Codemotion Rome 2017
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017Codemotion
 
Fluent 2018: When third parties stop being polite... and start getting real
Fluent 2018: When third parties stop being polite... and start getting realFluent 2018: When third parties stop being polite... and start getting real
Fluent 2018: When third parties stop being polite... and start getting realAkamai Developers & Admins
 
Top Advantages of Using Google Cloud Platform
Top Advantages of Using Google Cloud PlatformTop Advantages of Using Google Cloud Platform
Top Advantages of Using Google Cloud PlatformKinsta WordPress Hosting
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App EngineColin Su
 
JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試Simon Su
 
Serverless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsServerless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsMárton Kodok
 
Google Cloud Dataflow meets TensorFlow
Google Cloud Dataflow meets TensorFlowGoogle Cloud Dataflow meets TensorFlow
Google Cloud Dataflow meets TensorFlowHayato Yoshikawa
 
Google Cloud Platform 2014Q1 - Starter Guide
Google Cloud Platform   2014Q1 - Starter GuideGoogle Cloud Platform   2014Q1 - Starter Guide
Google Cloud Platform 2014Q1 - Starter GuideSimon Su
 
Firebase in action 2021
Firebase in action 2021Firebase in action 2021
Firebase in action 2021NhanNguyen534
 
PRPL Pattern with Webpack and React
PRPL Pattern with Webpack and ReactPRPL Pattern with Webpack and React
PRPL Pattern with Webpack and ReactGrgur Grisogono
 
Using Google Compute Engine
Using Google Compute EngineUsing Google Compute Engine
Using Google Compute EngineLynn Langit
 
Google Cloud: Data Analysis and Machine Learningn Technologies
Google Cloud: Data Analysis and Machine Learningn Technologies Google Cloud: Data Analysis and Machine Learningn Technologies
Google Cloud: Data Analysis and Machine Learningn Technologies Andrés Leonardo Martinez Ortiz
 
Powering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud PlatformPowering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud PlatformRomin Irani
 
Introduction to Google Compute Engine
Introduction to Google Compute EngineIntroduction to Google Compute Engine
Introduction to Google Compute EngineColin Su
 

What's hot (20)

GDG Heraklion - Architecting for the Google Cloud Platform
GDG Heraklion - Architecting for the Google Cloud PlatformGDG Heraklion - Architecting for the Google Cloud Platform
GDG Heraklion - Architecting for the Google Cloud Platform
 
What is Google Cloud Platform - GDG DevFest 18 Depok
What is Google Cloud Platform - GDG DevFest 18 DepokWhat is Google Cloud Platform - GDG DevFest 18 Depok
What is Google Cloud Platform - GDG DevFest 18 Depok
 
Importance of GCP: 30 Days of GCP
Importance of GCP: 30 Days of GCPImportance of GCP: 30 Days of GCP
Importance of GCP: 30 Days of GCP
 
GDG Jakarta Meetup - Streaming Analytics With Apache Beam
GDG Jakarta Meetup - Streaming Analytics With Apache BeamGDG Jakarta Meetup - Streaming Analytics With Apache Beam
GDG Jakarta Meetup - Streaming Analytics With Apache Beam
 
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017Introduction to gRPC - Mete Atamel - Codemotion Rome 2017
Introduction to gRPC - Mete Atamel - Codemotion Rome 2017
 
Fluent 2018: Measuring What Matters
Fluent 2018: Measuring What MattersFluent 2018: Measuring What Matters
Fluent 2018: Measuring What Matters
 
Fluent 2018: When third parties stop being polite... and start getting real
Fluent 2018: When third parties stop being polite... and start getting realFluent 2018: When third parties stop being polite... and start getting real
Fluent 2018: When third parties stop being polite... and start getting real
 
Top Advantages of Using Google Cloud Platform
Top Advantages of Using Google Cloud PlatformTop Advantages of Using Google Cloud Platform
Top Advantages of Using Google Cloud Platform
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試
 
Serverless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsServerless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud Workflows
 
Gdsc muk - innocent
Gdsc   muk - innocentGdsc   muk - innocent
Gdsc muk - innocent
 
Google Cloud Dataflow meets TensorFlow
Google Cloud Dataflow meets TensorFlowGoogle Cloud Dataflow meets TensorFlow
Google Cloud Dataflow meets TensorFlow
 
Google Cloud Platform 2014Q1 - Starter Guide
Google Cloud Platform   2014Q1 - Starter GuideGoogle Cloud Platform   2014Q1 - Starter Guide
Google Cloud Platform 2014Q1 - Starter Guide
 
Firebase in action 2021
Firebase in action 2021Firebase in action 2021
Firebase in action 2021
 
PRPL Pattern with Webpack and React
PRPL Pattern with Webpack and ReactPRPL Pattern with Webpack and React
PRPL Pattern with Webpack and React
 
Using Google Compute Engine
Using Google Compute EngineUsing Google Compute Engine
Using Google Compute Engine
 
Google Cloud: Data Analysis and Machine Learningn Technologies
Google Cloud: Data Analysis and Machine Learningn Technologies Google Cloud: Data Analysis and Machine Learningn Technologies
Google Cloud: Data Analysis and Machine Learningn Technologies
 
Powering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud PlatformPowering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud Platform
 
Introduction to Google Compute Engine
Introduction to Google Compute EngineIntroduction to Google Compute Engine
Introduction to Google Compute Engine
 

Similar to Where should I run my code? Serverless, Containers, Virtual Machines and more

GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architecturesnine
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kuberneteskloia
 
Containerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudContainerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudSubbu Rama
 
Lunar Way and the Cloud Native "stack"
Lunar Way and the Cloud Native "stack"Lunar Way and the Cloud Native "stack"
Lunar Way and the Cloud Native "stack"Kasper Nissen
 
Kubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesKubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesWeaveworks
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...NETWAYS
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)QAware GmbH
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...tdc-globalcode
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalPatrick Chanezon
 
Can i service this from my raspberry pi
Can i service this from my raspberry piCan i service this from my raspberry pi
Can i service this from my raspberry piThoughtworks
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"IBM France Lab
 
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...Indrajit Poddar
 
Using eBPF to Measure the k8s Cluster Health
Using eBPF to Measure the k8s Cluster HealthUsing eBPF to Measure the k8s Cluster Health
Using eBPF to Measure the k8s Cluster HealthScyllaDB
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Mario Ishara Fernando
 
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud Platformon
6. DISZ - Webalkalmazások skálázhatósága  a Google Cloud Platformon6. DISZ - Webalkalmazások skálázhatósága  a Google Cloud Platformon
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud PlatformonMárton Kodok
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPSACA IT-Solutions
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITStijn Wijndaele
 
Kubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CDKubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CDStfalcon Meetups
 

Similar to Where should I run my code? Serverless, Containers, Virtual Machines and more (20)

GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architectures
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
 
Containerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudContainerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the Cloud
 
Lunar Way and the Cloud Native "stack"
Lunar Way and the Cloud Native "stack"Lunar Way and the Cloud Native "stack"
Lunar Way and the Cloud Native "stack"
 
Kubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slidesKubecon seattle 2018 workshop slides
Kubecon seattle 2018 workshop slides
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
 
56k.cloud training
56k.cloud training56k.cloud training
56k.cloud training
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - Technical
 
Knative and Kubernetes - bringing serverless to more developers
Knative and Kubernetes - bringing serverless to more developersKnative and Kubernetes - bringing serverless to more developers
Knative and Kubernetes - bringing serverless to more developers
 
Can i service this from my raspberry pi
Can i service this from my raspberry piCan i service this from my raspberry pi
Can i service this from my raspberry pi
 
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
20190613 - IBM Cloud Côte d'Azur meetup - "Cloud & Containers"
 
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...
Enabling Cognitive Workloads on the Cloud: GPUs with Mesos, Docker and Marath...
 
Using eBPF to Measure the k8s Cluster Health
Using eBPF to Measure the k8s Cluster HealthUsing eBPF to Measure the k8s Cluster Health
Using eBPF to Measure the k8s Cluster Health
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
 
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud Platformon
6. DISZ - Webalkalmazások skálázhatósága  a Google Cloud Platformon6. DISZ - Webalkalmazások skálázhatósága  a Google Cloud Platformon
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud Platformon
 
'DOCKER' & CLOUD: ENABLERS For DEVOPS
'DOCKER' & CLOUD:  ENABLERS For DEVOPS'DOCKER' & CLOUD:  ENABLERS For DEVOPS
'DOCKER' & CLOUD: ENABLERS For DEVOPS
 
Docker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-ITDocker and Cloud - Enables for DevOps - by ACA-IT
Docker and Cloud - Enables for DevOps - by ACA-IT
 
Kubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CDKubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CD
 

Recently uploaded

20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 

Recently uploaded (20)

20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 

Where should I run my code? Serverless, Containers, Virtual Machines and more