Google App Engine 
Presented By: 
Csaba Toth 
Csaba Technology Services LLC 
Chrome & Cloud
Our sponsors
Agenda 
• Cloud Computing and Google Cloud 
Platform 
• Google App Engine 
• Beyond GAE (Google App Engine)
Cloud Computing 
http://dilbert.com/strips/comic/2011-01-07/
Cloud Service Levels 
IaaS: Infrastructure as a Service 
PaaS: Platform as a Service 
SaaS: Software as a Service SaaS 
PaaS 
IaaS
Infrastructure as a Service 
• Simplest form: leasing a physical or virtual 
server box: RackSpace, SoftLayer 
• Includes 
• Hardware: servers, network, routers, load 
balancers,… 
• Software: operating systems, databases (storage), 
application servers
Infrastructure as a Service 
Amazon AWS (Amazon Web Services) (+ S3 
(Simple Storage Service) + EC2 (Elastic Cloud 
Compute)) 
Microsoft Azure: VM Role 
Google: Google Compute Engine (GCE)*
Platform as a Service 
• The provider takes care some higher level 
functions in the service stack 
• Instead of getting servers, you get an 
application framework 
• Less control over the lower level service 
elements, but the abstraction should result in 
less hassle and more focus on the goal
Platform as a Service 
• Google: Google App Engine (GAE)* 
• Azure Web Role, Worker Role, Reporting 
Services, etc.
Software as a Service 
• Software deployed on the internet 
• Designed for end-users 
• Delivered through the web 
• The back-end automatically scales, fault-tolerant 
persistence
Software as a Service 
• Usually API (Application Programming 
Interface) is available for usage or feature 
extension 
• Example 
• Gmail, Google Docs, Google Spreadsheet 
• Office 365
IaaS / PaaS / SaaS 
SaaS 
PaaS 
IaaS 
Level of Control 
Level of Abstraction
IaaS / PaaS / SaaS 
Control + Cost Efficiency + Savings
Google App Engine
Google App Engine 
• PaaS level member of Google Cloud 
Platform 
• It’s for developing, hosting, and scaling out 
web applications 
• Supported languages: 
• Python 
• Java (+ JVM langs Groovy, JRuby, Scala, Clojure) 
• Go (experimental), PHP (experimental)
Google App Engine 
Python 
• Django, CherryPy, Pyramid, Flask, web2py, webapp2, 
and more 
• CGI adapters 
Java 
• Servlet 2.5 technology, Jetty Web Server 
• JSP, Java Server Faces, JPA, JDO, Spring Framework, 
Struts 2*, Grails*, …
Google App Engine 
Restrictions: 
• Can only execute code which respond to HTTP requests 
• Answer cannot take longer than 60 seconds! 
• Normally only pure Python modules (no C or Pyrex)* 
• …
GAE Demo 
• Hosting a website using App Engine: 
http://www.labnol.org/internet/host-website-on- 
google-app-engine/18801/ 
• Google Maps and Google App Engine 
Demo: 
http://wtp2.appspot.com/AppEngineMapDem 
o.htm
GAE Demo 
• Java Servlet Endpoints hosted by App 
Engine for an multi platform card game: 
https://github.com/59DAYSOFCODE/Project 
-Deal-ORound/tree/master/cards/server
Cloud Computing 
http://dilbert.com/strips/comic/2009-11-18/ 
http://dilbert.com/strips/comic/2010-01-18/
Thank you! 
Questions?
Resources 
• https://speakerdeck.com/googlecloudplatform/k 
eynote-cloud-developer-roadshow-2014 
• https://speakerdeck.com/googlecloudplatform/ia 
as-divide-cloud-developer-roadshow-2014 
• Slides: http://www.slideshare.net/tothc 
• Contact: http://www.meetup.com/CCalJUG/
Our sponsors

Google App Engine

  • 1.
    Google App Engine Presented By: Csaba Toth Csaba Technology Services LLC Chrome & Cloud
  • 2.
  • 3.
    Agenda • CloudComputing and Google Cloud Platform • Google App Engine • Beyond GAE (Google App Engine)
  • 4.
  • 6.
    Cloud Service Levels IaaS: Infrastructure as a Service PaaS: Platform as a Service SaaS: Software as a Service SaaS PaaS IaaS
  • 7.
    Infrastructure as aService • Simplest form: leasing a physical or virtual server box: RackSpace, SoftLayer • Includes • Hardware: servers, network, routers, load balancers,… • Software: operating systems, databases (storage), application servers
  • 8.
    Infrastructure as aService Amazon AWS (Amazon Web Services) (+ S3 (Simple Storage Service) + EC2 (Elastic Cloud Compute)) Microsoft Azure: VM Role Google: Google Compute Engine (GCE)*
  • 9.
    Platform as aService • The provider takes care some higher level functions in the service stack • Instead of getting servers, you get an application framework • Less control over the lower level service elements, but the abstraction should result in less hassle and more focus on the goal
  • 10.
    Platform as aService • Google: Google App Engine (GAE)* • Azure Web Role, Worker Role, Reporting Services, etc.
  • 11.
    Software as aService • Software deployed on the internet • Designed for end-users • Delivered through the web • The back-end automatically scales, fault-tolerant persistence
  • 12.
    Software as aService • Usually API (Application Programming Interface) is available for usage or feature extension • Example • Gmail, Google Docs, Google Spreadsheet • Office 365
  • 13.
    IaaS / PaaS/ SaaS SaaS PaaS IaaS Level of Control Level of Abstraction
  • 14.
    IaaS / PaaS/ SaaS Control + Cost Efficiency + Savings
  • 15.
  • 18.
    Google App Engine • PaaS level member of Google Cloud Platform • It’s for developing, hosting, and scaling out web applications • Supported languages: • Python • Java (+ JVM langs Groovy, JRuby, Scala, Clojure) • Go (experimental), PHP (experimental)
  • 19.
    Google App Engine Python • Django, CherryPy, Pyramid, Flask, web2py, webapp2, and more • CGI adapters Java • Servlet 2.5 technology, Jetty Web Server • JSP, Java Server Faces, JPA, JDO, Spring Framework, Struts 2*, Grails*, …
  • 20.
    Google App Engine Restrictions: • Can only execute code which respond to HTTP requests • Answer cannot take longer than 60 seconds! • Normally only pure Python modules (no C or Pyrex)* • …
  • 22.
    GAE Demo •Hosting a website using App Engine: http://www.labnol.org/internet/host-website-on- google-app-engine/18801/ • Google Maps and Google App Engine Demo: http://wtp2.appspot.com/AppEngineMapDem o.htm
  • 23.
    GAE Demo •Java Servlet Endpoints hosted by App Engine for an multi platform card game: https://github.com/59DAYSOFCODE/Project -Deal-ORound/tree/master/cards/server
  • 35.
    Cloud Computing http://dilbert.com/strips/comic/2009-11-18/ http://dilbert.com/strips/comic/2010-01-18/
  • 36.
  • 37.
    Resources • https://speakerdeck.com/googlecloudplatform/k eynote-cloud-developer-roadshow-2014 • https://speakerdeck.com/googlecloudplatform/ia as-divide-cloud-developer-roadshow-2014 • Slides: http://www.slideshare.net/tothc • Contact: http://www.meetup.com/CCalJUG/
  • 39.