SlideShare a Scribd company logo
1 of 18
Download to read offline
Serverless with Google App Engine
Delivering 15M Page views for only 10 USD
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
2
TALK
- Why EC2 does not scale
- What Google App Engine is
- How App Engine solved my scaling issue
- Cost considerations
- Downsides
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
3
WHO, ME?
DEVOPS AT PRODIGY FINANCE
GUNTER GRODOTZKI
Proud Father living in Cape Town - love
working with Computers!
- Love solving solvable problems
- KISS
- Recently joined the most awesome
company: Prodigy Finance
- Self proclaimed builder
- @lifeofguenter (Twitter / GitHub)
- NANO IS TEH BEST!
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
4
WHY DOES EC2 NOT SCALE?
- Most common scaling metric: CPU
- But RAM?
- But IO?
- But connections?
- Spin-up times: 1-5min
- If you get hit, 1min is already too long
- Not an issue on large scales/clusters
- Even if we fix this, we still need to scale MySQL
- AutoScaling is a marketing buzz-word to sell EC2 which is
more expensive than bare-metal
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
5
WHAT IS GOOGLE APP ENGINE
- Two types: Standard & Flexible
- This talk is about: Standard (easier scaling)
- A suite of services that are designed in a “web-scale” /
“serverless” fashion
- App Engine => stateless webends (Heroku? Fargate?)
- Datastore => NoSQL / DynamoDB
- Search => Elasticsearch (simplified)
- Memcached => free Shared instance
- Ties well into other Gcloud services
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
6
WHAT IS GOOGLE APP ENGINE
- “True” auto-scaling
- No traffic = zero costs
- High traffic = Limitless scaling
- High available (e.g. “LoadBalancer” included)
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
7
APP.YAML
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
8
INDEX.PHP
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
9
DEPLOY
$ gcloud app deploy app.yaml --version foobar-master —project foobar
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
10
REAL WORLD EXAMPLE
- Url.RW -> hides http referer (Site A linking to Site B)
- Site A -> Url.RW -> Site B
- Very simple written PHP application
- No Database
- Goal: deliver as quick, cheap and reliable as possible HTTP
requests
- Cloudflare for some damage control
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
15
HOW DID APP ENGINE SOLVE MY SCALING ISSUE?
- Title almost did not fit on the slide
- No DB to worry => easier problem to solve
- High traffic non-the-less
- USP: high availability + low response times
- Running EC2 + ELB too expensive
- DigitalOcean (Droplet + LB) not reliable enough
- App Engine perfectly scaled (and minimised costs on days
where “clients” were jumping ship) and still kept my uptime
at 100%
- 15M page impressions => 10 USD costs in that month
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
16
COSTS CONSIDERATION
- EC2 more expensive than rented
dedicated, still we advocate it
- Direct cost comparison does not
always make sense
- Minimum base costs when running
VMs
- Purpose
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
17
DOWNSIDES
- Vendor locking
- Lets be real here though…
- Gets expensive on batch processing or if you have a steady
stream of users
- You have to work with the tools (don’t use MySQL) for best
results
- Optimise your application
- Surely a lot more depending on from which angle you look
at it
DevOps Days CPT 2018 

Gunter Grodotzki
SERVERLESS
GOOGLE APP ENGINE
18
QUESTIONS?

More Related Content

What's hot

Improve Your Front-End Project Workflow With Grunt
Improve Your Front-End Project Workflow With GruntImprove Your Front-End Project Workflow With Grunt
Improve Your Front-End Project Workflow With GruntDen Odell
 
sitMUC 2018 - Speed up abap-unit data creation process
sitMUC 2018 - Speed up abap-unit data creation processsitMUC 2018 - Speed up abap-unit data creation process
sitMUC 2018 - Speed up abap-unit data creation processAlexander Geppart
 
A Lap around ASP.NET 5 - VConf
A Lap around ASP.NET 5 - VConfA Lap around ASP.NET 5 - VConf
A Lap around ASP.NET 5 - VConfSam Basu
 
The Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cliThe Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cliTracy Lee
 
Creating BananaJS with Angular 2, Angular CLI, and Material Design
Creating BananaJS with Angular 2, Angular CLI, and Material DesignCreating BananaJS with Angular 2, Angular CLI, and Material Design
Creating BananaJS with Angular 2, Angular CLI, and Material DesignTracy Lee
 
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Tracy Lee
 
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...Tracy Lee
 
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)Igalia
 
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018BookNet Canada
 
Nascom Drupal & Symfony projects 2013
Nascom Drupal & Symfony projects 2013Nascom Drupal & Symfony projects 2013
Nascom Drupal & Symfony projects 2013Nascom
 
GraphQL over REST at Reactathon 2018
GraphQL over REST at Reactathon 2018GraphQL over REST at Reactathon 2018
GraphQL over REST at Reactathon 2018Sashko Stubailo
 
Implementing GraphQL - Without a Backend
Implementing GraphQL - Without a BackendImplementing GraphQL - Without a Backend
Implementing GraphQL - Without a BackendShowmax Engineering
 
Hot Reloading with React - Experiences
Hot Reloading with React - ExperiencesHot Reloading with React - Experiences
Hot Reloading with React - ExperiencesHeribert Schütz
 
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...apidays
 
Rahul 9877661412 full_stack_developer
Rahul 9877661412 full_stack_developerRahul 9877661412 full_stack_developer
Rahul 9877661412 full_stack_developerRahul Kumar
 
GatsbyJS - A static site generator in React
GatsbyJS - A static site generator in ReactGatsbyJS - A static site generator in React
GatsbyJS - A static site generator in Reactkitconcept GmbH
 
Mobile features with ruby
Mobile features with rubyMobile features with ruby
Mobile features with rubyMaksim Golivkin
 
Introduction to Cloud Foundry
Introduction to Cloud FoundryIntroduction to Cloud Foundry
Introduction to Cloud FoundryPrabhas Gupte
 

What's hot (20)

Improve Your Front-End Project Workflow With Grunt
Improve Your Front-End Project Workflow With GruntImprove Your Front-End Project Workflow With Grunt
Improve Your Front-End Project Workflow With Grunt
 
sitMUC 2018 - Speed up abap-unit data creation process
sitMUC 2018 - Speed up abap-unit data creation processsitMUC 2018 - Speed up abap-unit data creation process
sitMUC 2018 - Speed up abap-unit data creation process
 
A Lap around ASP.NET 5 - VConf
A Lap around ASP.NET 5 - VConfA Lap around ASP.NET 5 - VConf
A Lap around ASP.NET 5 - VConf
 
The Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cliThe Tale of 2 CLIs - Ember-cli and Angular-cli
The Tale of 2 CLIs - Ember-cli and Angular-cli
 
Creating BananaJS with Angular 2, Angular CLI, and Material Design
Creating BananaJS with Angular 2, Angular CLI, and Material DesignCreating BananaJS with Angular 2, Angular CLI, and Material Design
Creating BananaJS with Angular 2, Angular CLI, and Material Design
 
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
Creating an Angular 2 Angular CLI app in 15 Minutes Using MaterializeCSS & Fi...
 
PWA with Kotlin
PWA with KotlinPWA with Kotlin
PWA with Kotlin
 
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...
AngularJS RTP Slides - Angular 2 Demo #ngtattoo with Angular CLI, Newest New ...
 
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)
Zero-Copy Compositing in WebKitGTK+ for GUADEC 2015 (GUADEC 2015)
 
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018
Life After Adobe - Nick Barreto & Simon Collinson - ebookcraft 2018
 
Nascom Drupal & Symfony projects 2013
Nascom Drupal & Symfony projects 2013Nascom Drupal & Symfony projects 2013
Nascom Drupal & Symfony projects 2013
 
GraphQL over REST at Reactathon 2018
GraphQL over REST at Reactathon 2018GraphQL over REST at Reactathon 2018
GraphQL over REST at Reactathon 2018
 
Implementing GraphQL - Without a Backend
Implementing GraphQL - Without a BackendImplementing GraphQL - Without a Backend
Implementing GraphQL - Without a Backend
 
Hot Reloading with React - Experiences
Hot Reloading with React - ExperiencesHot Reloading with React - Experiences
Hot Reloading with React - Experiences
 
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...
APIdays Paris 2019 - Real World Graphene: Lessons Learned from Building a Gra...
 
Rahul 9877661412 full_stack_developer
Rahul 9877661412 full_stack_developerRahul 9877661412 full_stack_developer
Rahul 9877661412 full_stack_developer
 
GatsbyJS - A static site generator in React
GatsbyJS - A static site generator in ReactGatsbyJS - A static site generator in React
GatsbyJS - A static site generator in React
 
Om & React
Om & ReactOm & React
Om & React
 
Mobile features with ruby
Mobile features with rubyMobile features with ruby
Mobile features with ruby
 
Introduction to Cloud Foundry
Introduction to Cloud FoundryIntroduction to Cloud Foundry
Introduction to Cloud Foundry
 

Similar to DevOpsDays Cape Town 2018 - Serverless with Google App Engine

Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App EngineColin Su
 
Google Cloud Platform Solutions for DevOps Engineers
Google Cloud Platform Solutions  for DevOps EngineersGoogle Cloud Platform Solutions  for DevOps Engineers
Google Cloud Platform Solutions for DevOps EngineersMárton Kodok
 
Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)Natalia Efimtseva
 
Google Cloud Platform Update
Google Cloud Platform UpdateGoogle Cloud Platform Update
Google Cloud Platform UpdateIdo Green
 
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...
Bogdan botea, dmitry nefedkin   no fiddle, efficient development on the googl...Bogdan botea, dmitry nefedkin   no fiddle, efficient development on the googl...
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...Codecamp Romania
 
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)Ido Green
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webRobin Glen
 
Js foo famo.us- build native quality apps using html5 within a day
Js foo  famo.us- build native quality apps using html5 within a dayJs foo  famo.us- build native quality apps using html5 within a day
Js foo famo.us- build native quality apps using html5 within a dayDebnath Sinha
 
Scaling an eCommerce environment
Scaling an eCommerce environmentScaling an eCommerce environment
Scaling an eCommerce environmentSander Mangel
 
Js foo famo.us- build native quality apps using html5 within a day
Js foo  famo.us- build native quality apps using html5 within a dayJs foo  famo.us- build native quality apps using html5 within a day
Js foo famo.us- build native quality apps using html5 within a dayDebnath Sinha
 
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...e-Legion
 
Famo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a dayFamo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a dayDebnath Sinha
 
SearchLeeds 2019 - Nichola stott - The state of PWAs
SearchLeeds 2019 - Nichola stott - The state of PWAsSearchLeeds 2019 - Nichola stott - The state of PWAs
SearchLeeds 2019 - Nichola stott - The state of PWAsSearchLeeds
 
4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdfLuillyfe Blanco
 
DevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback LoopsDevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback LoopsAndreas Grabner
 
Google Cloud Developer Challenge - GDG Belgaum
Google Cloud Developer Challenge - GDG BelgaumGoogle Cloud Developer Challenge - GDG Belgaum
Google Cloud Developer Challenge - GDG Belgaumsandeephegde
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalkChris Schalk
 
AMP - SMX München 2018
AMP - SMX München 2018AMP - SMX München 2018
AMP - SMX München 2018Bastian Grimm
 

Similar to DevOpsDays Cape Town 2018 - Serverless with Google App Engine (20)

Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Google Cloud Platform Solutions for DevOps Engineers
Google Cloud Platform Solutions  for DevOps EngineersGoogle Cloud Platform Solutions  for DevOps Engineers
Google Cloud Platform Solutions for DevOps Engineers
 
Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)
 
Google Cloud Platform Update
Google Cloud Platform UpdateGoogle Cloud Platform Update
Google Cloud Platform Update
 
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...
Bogdan botea, dmitry nefedkin   no fiddle, efficient development on the googl...Bogdan botea, dmitry nefedkin   no fiddle, efficient development on the googl...
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...
 
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)
Entrepreneurship Tips With HTML5 & App Engine Startup Weekend (June 2012)
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile web
 
Js foo famo.us- build native quality apps using html5 within a day
Js foo  famo.us- build native quality apps using html5 within a dayJs foo  famo.us- build native quality apps using html5 within a day
Js foo famo.us- build native quality apps using html5 within a day
 
Why Go Lang?
Why Go Lang?Why Go Lang?
Why Go Lang?
 
Scaling an eCommerce environment
Scaling an eCommerce environmentScaling an eCommerce environment
Scaling an eCommerce environment
 
Js foo famo.us- build native quality apps using html5 within a day
Js foo  famo.us- build native quality apps using html5 within a dayJs foo  famo.us- build native quality apps using html5 within a day
Js foo famo.us- build native quality apps using html5 within a day
 
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
 
Famo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a dayFamo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a day
 
SearchLeeds 2019 - Nichola stott - The state of PWAs
SearchLeeds 2019 - Nichola stott - The state of PWAsSearchLeeds 2019 - Nichola stott - The state of PWAs
SearchLeeds 2019 - Nichola stott - The state of PWAs
 
Open Day July 2019
Open Day July 2019Open Day July 2019
Open Day July 2019
 
4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf
 
DevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback LoopsDevOps Pipelines and Metrics Driven Feedback Loops
DevOps Pipelines and Metrics Driven Feedback Loops
 
Google Cloud Developer Challenge - GDG Belgaum
Google Cloud Developer Challenge - GDG BelgaumGoogle Cloud Developer Challenge - GDG Belgaum
Google Cloud Developer Challenge - GDG Belgaum
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
 
AMP - SMX München 2018
AMP - SMX München 2018AMP - SMX München 2018
AMP - SMX München 2018
 

Recently uploaded

Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 

Recently uploaded (20)

Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 

DevOpsDays Cape Town 2018 - Serverless with Google App Engine

  • 1. Serverless with Google App Engine Delivering 15M Page views for only 10 USD
  • 2. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 2 TALK - Why EC2 does not scale - What Google App Engine is - How App Engine solved my scaling issue - Cost considerations - Downsides
  • 3. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 3 WHO, ME? DEVOPS AT PRODIGY FINANCE GUNTER GRODOTZKI Proud Father living in Cape Town - love working with Computers! - Love solving solvable problems - KISS - Recently joined the most awesome company: Prodigy Finance - Self proclaimed builder - @lifeofguenter (Twitter / GitHub) - NANO IS TEH BEST!
  • 4. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 4 WHY DOES EC2 NOT SCALE? - Most common scaling metric: CPU - But RAM? - But IO? - But connections? - Spin-up times: 1-5min - If you get hit, 1min is already too long - Not an issue on large scales/clusters - Even if we fix this, we still need to scale MySQL - AutoScaling is a marketing buzz-word to sell EC2 which is more expensive than bare-metal
  • 5. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 5 WHAT IS GOOGLE APP ENGINE - Two types: Standard & Flexible - This talk is about: Standard (easier scaling) - A suite of services that are designed in a “web-scale” / “serverless” fashion - App Engine => stateless webends (Heroku? Fargate?) - Datastore => NoSQL / DynamoDB - Search => Elasticsearch (simplified) - Memcached => free Shared instance - Ties well into other Gcloud services
  • 6. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 6 WHAT IS GOOGLE APP ENGINE - “True” auto-scaling - No traffic = zero costs - High traffic = Limitless scaling - High available (e.g. “LoadBalancer” included)
  • 7. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 7 APP.YAML
  • 8. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 8 INDEX.PHP
  • 9. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 9 DEPLOY $ gcloud app deploy app.yaml --version foobar-master —project foobar
  • 10. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 10 REAL WORLD EXAMPLE - Url.RW -> hides http referer (Site A linking to Site B) - Site A -> Url.RW -> Site B - Very simple written PHP application - No Database - Goal: deliver as quick, cheap and reliable as possible HTTP requests - Cloudflare for some damage control
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 15 HOW DID APP ENGINE SOLVE MY SCALING ISSUE? - Title almost did not fit on the slide - No DB to worry => easier problem to solve - High traffic non-the-less - USP: high availability + low response times - Running EC2 + ELB too expensive - DigitalOcean (Droplet + LB) not reliable enough - App Engine perfectly scaled (and minimised costs on days where “clients” were jumping ship) and still kept my uptime at 100% - 15M page impressions => 10 USD costs in that month
  • 16. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 16 COSTS CONSIDERATION - EC2 more expensive than rented dedicated, still we advocate it - Direct cost comparison does not always make sense - Minimum base costs when running VMs - Purpose
  • 17. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 17 DOWNSIDES - Vendor locking - Lets be real here though… - Gets expensive on batch processing or if you have a steady stream of users - You have to work with the tools (don’t use MySQL) for best results - Optimise your application - Surely a lot more depending on from which angle you look at it
  • 18. DevOps Days CPT 2018 
 Gunter Grodotzki SERVERLESS GOOGLE APP ENGINE 18 QUESTIONS?