SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Indika Munaweera
Topics We Cover In This Session
Designing for Scale and Reliability
•What problems App Engine resolve?
•App Engine Stack
•App Engine design
motivations
How Front End works
•Edge Caching
•Load Balancing
How App Server works
•Frontend and Backend instances
•Pending Latency and Idle Instance
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
A Case Study : Real time Earthquake Monitor
•By NIED Japan in collaboration with Google
•The blinking dots represents real time Peak
Ground Acceleration
•20,000 concurrent users, 10000 req/sec at peak
Designing for Scale and Reliability
Designing for Scale and Reliability
The important requirements for Earthquake monitor site
•Scalability
- As it gets spike of traffic at the event of earthquake
•Reliability
- It’s useless if it does not work at the time of disaster
•Cost efficiency
- It’s too expensive to prepare for enough hardware resources that can handle the peak
traffic. They would be idle for the rest of the time.
Designing for Scale and Reliability
How do I design a web service that is scalable and
reliable like this?
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
Any
Standard
Cloud
Offering
Designing for Scale and Reliability
Any
Standard
Cloud
Offering
IaaS
Designing for Scale and Reliability
VM
MANAGEMENT
SOFTWARE
MANAGEMENT
WEB
SERVER DISTRIBUTED
DATABASE
DISTRIBUTED
FILE SYSTEM
APPLICATION
MONITORING
SECURITY
LOAD
BALANCING
???????
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
Designing for Scale and Reliability
Google App Engine is a platform for building scalable web applications and mobile
backends. App Engine provides you with built-in services and APIs such as NoSQL
datastores, memcache, and a user authentication API, common to most applications.
App Engine will scale your application automatically in response to the amount of
traffic it receives so you only pay for the resources you use. Just upload your code
and Google will manage your app's availability. There are no servers for you to
provision or maintain
Designing for Scale and Reliability
Key Features of Google App Engine
•Start Quickly, Build Faster
built-in services such as load balancing, health checks, and application logging
•Automatic Scaling
App Engine offers built-in auto-scaling so that your apps can instantly scale
automatically based on need, from zero to millions of users.
•Automated Security Scanning
Security Scanner automatically scans and detects common web application
vulnerabilities.
•Use the Tools You Love
App Engine works with popular development tools such as Eclipse, IntelliJ, Maven, Git,
Jenkins, and PyCharm
Designing for Scale and Reliability
The App Engine Encapsulate Them All
What if you have:
•Hardware failures
•Traffic Spike
•Growing Big Data
•No initial fund
•No one to build/operate
Designing for Scale and Reliability
App Engine design motivations
Encourage Google’s best practice for scalability and reliability
Non-relational data model by Datastore/Bigtable
 Sharding, Denormalization…
Portable and fine-grained app design
 Fast request handling to optimize server resource utilization
 Independent to each physical server
It’s not just a hosting service: App Engine empowers you to design your app in
Google way!
How Front End works
hat Benefits will Front End provide?
Huge difference between the traffic volume on the orange line (the number of requests)
and blue line (the number of requests handled by application)
How Front End works
hat Benefits will Front End provide?
Huge difference between the traffic volume on the orange line (the number of requests)
and blue line (the number of requests handled by application)
How Front End works
Life of a Request in Front End
How Front End works
GFE closest to the
user provides edge
caching capability
AE FE provides load
balancing on App Servers
and Static Servers
How App Engine works
How App Engine works
How App Server works
How App Engine works
What is an Application Instance?
Similar to a virtual machine, provides a runtime environment for your app
•has dedicated memory for your app
•but fully managed
No burden of managing OS; the overhead, device drivers, security..
How App Engine works
ntend and Backend Instances
Frontend instances (not App Engine Front End)
•Dynamically created and deleted = low cost
•Enforce fast response and stateless design
•Suitable for processing short-lived requests
Backend instances
•Statically created and deleted = higher cost
•No limit for response time, support stateful design
•Suitable for batch processing
How App Engine works
How Frontend instances Scale
•App Engine watches pending request queue of each instances
•Let’s see what would happen if your app gets a traffic spike
•Instances dynamically added/removed based on queue size
Pending
request
queue
How App Engine works
How Frontend instances Scale
•App Engine watches pending request queue of each instances
•Let’s see what would happen if your app gets a traffic spike
•Instances dynamically added/removed based on queue size
Pending
request
queue
Idle Instances
Pending
Latency
How App Engine works
Pending Latency
•Time to hold request in pending queue before creating new instances
•Less latency responds faster but costs more
How App Engine works
What are idle instances?
•Number of instances always available
•Higher number responds faster but costs more
How App Engine works
Key Takeaways
App Engine encapsulate all the cost and effort
•To build and operate a web app with Google scale and reliability
•Encourage Google’s best practices for scalability and reliability
•Significantly lower Total Cost of Ownership
Front End provides scalability and reliability by:
•Edge Caching by Google Front End
•Load Balancing by App Engine Front End
App server controls scalability by:
•Dynamic control of Frontend and Backend instances
•Managing Pending Latency and Idle Instances
Thank you !

Weitere ähnliche Inhalte

Was ist angesagt?

Google app engine - Overview
Google app engine - OverviewGoogle app engine - Overview
Google app engine - Overview
Nathan Quach
 
Platform as a service google app engine
Platform as a service   google app enginePlatform as a service   google app engine
Platform as a service google app engine
Deepu S Nath
 
Google app engine introduction
Google app engine introductionGoogle app engine introduction
Google app engine introduction
rajsandhu1989
 

Was ist angesagt? (20)

Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google app engine - Overview
Google app engine - OverviewGoogle app engine - Overview
Google app engine - Overview
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
Platform as a service google app engine
Platform as a service   google app enginePlatform as a service   google app engine
Platform as a service google app engine
 
App Engine
App EngineApp Engine
App Engine
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google App Engine (Introduction)
Google App Engine (Introduction)Google App Engine (Introduction)
Google App Engine (Introduction)
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Google app engine introduction
Google app engine introductionGoogle app engine introduction
Google app engine introduction
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
Google App Engine for Java
Google App Engine for JavaGoogle App Engine for Java
Google App Engine for Java
 
Google Application Engine
Google Application EngineGoogle Application Engine
Google Application Engine
 
Google App Engine tutorial
Google App Engine tutorialGoogle App Engine tutorial
Google App Engine tutorial
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Google App Engine: An Introduction
Google App Engine: An IntroductionGoogle App Engine: An Introduction
Google App Engine: An Introduction
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and Gaelyk
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google App Engine - Overview #3
Google App Engine - Overview #3Google App Engine - Overview #3
Google App Engine - Overview #3
 
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
 

Ähnlich wie Google App engine

Ähnlich wie Google App engine (20)

Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
 
Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling Microservices
 
Top 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & TricksTop 5 Java Performance Metrics, Tips & Tricks
Top 5 Java Performance Metrics, Tips & Tricks
 
Tech Talk on Cloud Computing
Tech Talk on Cloud ComputingTech Talk on Cloud Computing
Tech Talk on Cloud Computing
 
Understanding cloud with Google Cloud Platform
Understanding cloud with Google Cloud PlatformUnderstanding cloud with Google Cloud Platform
Understanding cloud with Google Cloud Platform
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
 
Application Architecture Summit - Monitoring the Dynamic Cloud
Application Architecture Summit - Monitoring the Dynamic Cloud Application Architecture Summit - Monitoring the Dynamic Cloud
Application Architecture Summit - Monitoring the Dynamic Cloud
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
Gcp intro-20160721
Gcp intro-20160721Gcp intro-20160721
Gcp intro-20160721
 
How to Monitor Your Java & .NET Applications with eG Enterprise
How to Monitor Your Java & .NET Applications with eG EnterpriseHow to Monitor Your Java & .NET Applications with eG Enterprise
How to Monitor Your Java & .NET Applications with eG Enterprise
 
Basic fundamentals of web application development
Basic fundamentals of web application developmentBasic fundamentals of web application development
Basic fundamentals of web application development
 
Moving complex enterprise ecommerce systems to the cloud
Moving complex enterprise ecommerce systems to the cloudMoving complex enterprise ecommerce systems to the cloud
Moving complex enterprise ecommerce systems to the cloud
 
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
 
Application Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applicationsApplication Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applications
 
Customer Sharing: HTC - What is in AWS Cloud for me?
Customer Sharing: HTC - What is in AWS Cloud for me?Customer Sharing: HTC - What is in AWS Cloud for me?
Customer Sharing: HTC - What is in AWS Cloud for me?
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
 
Scale net apps in aws
Scale net apps in awsScale net apps in aws
Scale net apps in aws
 
Scale net apps in aws
Scale net apps in awsScale net apps in aws
Scale net apps in aws
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 

Kürzlich hochgeladen

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Kürzlich hochgeladen (20)

Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 

Google App engine

  • 2. Topics We Cover In This Session Designing for Scale and Reliability •What problems App Engine resolve? •App Engine Stack •App Engine design motivations How Front End works •Edge Caching •Load Balancing How App Server works •Frontend and Backend instances •Pending Latency and Idle Instance
  • 3. Designing for Scale and Reliability
  • 4. Designing for Scale and Reliability
  • 5. Designing for Scale and Reliability
  • 6. Designing for Scale and Reliability A Case Study : Real time Earthquake Monitor •By NIED Japan in collaboration with Google •The blinking dots represents real time Peak Ground Acceleration •20,000 concurrent users, 10000 req/sec at peak
  • 7. Designing for Scale and Reliability
  • 8. Designing for Scale and Reliability The important requirements for Earthquake monitor site •Scalability - As it gets spike of traffic at the event of earthquake •Reliability - It’s useless if it does not work at the time of disaster •Cost efficiency - It’s too expensive to prepare for enough hardware resources that can handle the peak traffic. They would be idle for the rest of the time.
  • 9. Designing for Scale and Reliability How do I design a web service that is scalable and reliable like this?
  • 10. Designing for Scale and Reliability
  • 11. Designing for Scale and Reliability
  • 12. Designing for Scale and Reliability
  • 13. Designing for Scale and Reliability Any Standard Cloud Offering
  • 14. Designing for Scale and Reliability Any Standard Cloud Offering IaaS
  • 15. Designing for Scale and Reliability VM MANAGEMENT SOFTWARE MANAGEMENT WEB SERVER DISTRIBUTED DATABASE DISTRIBUTED FILE SYSTEM APPLICATION MONITORING SECURITY LOAD BALANCING ???????
  • 16. Designing for Scale and Reliability
  • 17. Designing for Scale and Reliability
  • 18. Designing for Scale and Reliability
  • 19. Designing for Scale and Reliability Google App Engine is a platform for building scalable web applications and mobile backends. App Engine provides you with built-in services and APIs such as NoSQL datastores, memcache, and a user authentication API, common to most applications. App Engine will scale your application automatically in response to the amount of traffic it receives so you only pay for the resources you use. Just upload your code and Google will manage your app's availability. There are no servers for you to provision or maintain
  • 20. Designing for Scale and Reliability Key Features of Google App Engine •Start Quickly, Build Faster built-in services such as load balancing, health checks, and application logging •Automatic Scaling App Engine offers built-in auto-scaling so that your apps can instantly scale automatically based on need, from zero to millions of users. •Automated Security Scanning Security Scanner automatically scans and detects common web application vulnerabilities. •Use the Tools You Love App Engine works with popular development tools such as Eclipse, IntelliJ, Maven, Git, Jenkins, and PyCharm
  • 21. Designing for Scale and Reliability The App Engine Encapsulate Them All What if you have: •Hardware failures •Traffic Spike •Growing Big Data •No initial fund •No one to build/operate
  • 22. Designing for Scale and Reliability App Engine design motivations Encourage Google’s best practice for scalability and reliability Non-relational data model by Datastore/Bigtable  Sharding, Denormalization… Portable and fine-grained app design  Fast request handling to optimize server resource utilization  Independent to each physical server It’s not just a hosting service: App Engine empowers you to design your app in Google way!
  • 23. How Front End works
  • 24. hat Benefits will Front End provide? Huge difference between the traffic volume on the orange line (the number of requests) and blue line (the number of requests handled by application) How Front End works
  • 25. hat Benefits will Front End provide? Huge difference between the traffic volume on the orange line (the number of requests) and blue line (the number of requests handled by application) How Front End works
  • 26. Life of a Request in Front End How Front End works GFE closest to the user provides edge caching capability AE FE provides load balancing on App Servers and Static Servers
  • 27. How App Engine works
  • 28. How App Engine works How App Server works
  • 29. How App Engine works What is an Application Instance? Similar to a virtual machine, provides a runtime environment for your app •has dedicated memory for your app •but fully managed No burden of managing OS; the overhead, device drivers, security..
  • 30. How App Engine works ntend and Backend Instances Frontend instances (not App Engine Front End) •Dynamically created and deleted = low cost •Enforce fast response and stateless design •Suitable for processing short-lived requests Backend instances •Statically created and deleted = higher cost •No limit for response time, support stateful design •Suitable for batch processing
  • 31. How App Engine works How Frontend instances Scale •App Engine watches pending request queue of each instances •Let’s see what would happen if your app gets a traffic spike •Instances dynamically added/removed based on queue size Pending request queue
  • 32. How App Engine works How Frontend instances Scale •App Engine watches pending request queue of each instances •Let’s see what would happen if your app gets a traffic spike •Instances dynamically added/removed based on queue size Pending request queue Idle Instances Pending Latency
  • 33. How App Engine works Pending Latency •Time to hold request in pending queue before creating new instances •Less latency responds faster but costs more
  • 34. How App Engine works What are idle instances? •Number of instances always available •Higher number responds faster but costs more
  • 35. How App Engine works Key Takeaways App Engine encapsulate all the cost and effort •To build and operate a web app with Google scale and reliability •Encourage Google’s best practices for scalability and reliability •Significantly lower Total Cost of Ownership Front End provides scalability and reliability by: •Edge Caching by Google Front End •Load Balancing by App Engine Front End App server controls scalability by: •Dynamic control of Frontend and Backend instances •Managing Pending Latency and Idle Instances