SlideShare a Scribd company logo
1 of 27
Download to read offline
EuroPython 2010
                                                  Birmingham, UK
                                                  Sun, 2010 Jul 18


                    What is…
                    Google App Engine?

                                                   Wesley Chun
                         Developer Relations, Google App Engine
                                         wesc+api@google.com
                                     @wescpy :: @app_engine
                              googleappengine.blogspot.com




About the Speaker



   •Background
      Degrees in CS, Math, Music from UC
      Software engineer by profession
      Over 2 decades as a full-time architect & developer
      Original Yahoo!Mail engineering team member
      Previously at Sun, HP, Xilinx, Legato, Cisco/IronPort
      Currently in Developer Relations at Google

   •Python community volunteer
      Python conferences, user groups, and mailing lists
      Technical trainer: corporate training, public courses
      Author/co-author (books, articles, blogger, etc.)
         • Core Python Programming ([2009,] 2007, 2001)
         • Python Fundamentals LiveLessons DVD (2009)
         • Python Web Development with Django (2009)




                                                                     1
Cloud Computing
                    What is it (besides being buzzword-compliant)?




The Cloud Pyramid




                                                                     2
What is App Engine?




 •App Engine is a platform

 •You build & test your app

 •Then upload your app to Google

 •App Engine runs everything

 •No need to worry about machines,
 network, storage, scalability, etc.




          Challenges building web apps




                                         3
What keeps you up at night?




           Easy to start
          Easy to scale

        Easy to maintain



                              4
We do the dirty work…




  The Components
  The pieces of Google App Engine




                                    5
Components




                          Language
                          Runtimes


                                          Web-based
               SDK                         Admin
                                           Console


                            Scalable
                         Infrastructure




Components




                                          Linux
                                          GFS
           Scalable
        Infrastructure                    Bigtable

                                          Hardware




                                                      6
Components




              Python
                                           Batteries
              & Java
                                           Included
             Runtimes




         Alternative API/Runtimes also available (more later)




Flexible alternative




                                                                7
Getting the job done




The king of ease-of-use




                •Extremely rapid development
                •Very low barrier of entry
                •Simple yet robust syntax
                •Rich library of packages/modules
                •App Engine's first language API




                                                    8
The king of enterprise development




               •Ubiquitous in Enterprise computing
               •Adheres to Java servlet standard
               •Rich library of packages/modules
               •Eclipse Plug-in support
               •Alternative language support




Java compliant Servlet Standard




                                                     9
Java Plug-n-Play




Python & Java not enough?




                            10
Components




             Web-based
              Admin




Application Monitoring




                         11
App Engine Monitoring




Components



                        Run
                        Locally

                        Easy
                        Deploy
              SDK
                        Manage
                        Versions

                        APIs




                                   12
Customer Service
                Ooops, we meant servicing customers!




How many ______ ?




                                                       13
App Engine Developers/Apps




BuddyPoke…




                             14
…scales




          •3.6MM DAUs on FB
          •1.9MM DAUs on MS
          •Add Orkut, Bebo, Hi5,
          Friendster, Hyves, Ning…




Gigya…




                                     15
… scales




Not all apps are web-based!!




  - Need backoffice processing? Want to build your own?
  - Go cloud with App Engine!
     - No UI needed for app to talk to App Engine
     - Great place for user info i.e., high scores, contacts, medals, etc
     - Better user interface: taking user data off the phone to web, etc.




                                                                            16
Features and Futures
                   Services and APIs now... and coming soon




Rich set of App Engine services/APIs




                                                              17
In review: an evolving platform
         Two years of App Engine and continually maturing…
                 Apr 2008        Python launch
                 May 2008        Memcache, Images API
                 Jul 2008        Logs export
                 Aug 2008        Batch write/delete
                 Oct 2008        HTTPS support
                 Dec 2008        Status dashboard, quota details
                 Feb 2009        Billing, larger files
                 Apr 2009        Java launch, DB import, cron support, SDC
                 May 2009        Key-only queries
                 Jun 2009        Task queues
                 Aug 2009        Kindless queries
                 Sep 2009        XMPP
                 Oct 2009        Incoming email
                 Dec 2009        Blobstore
                 Feb 2010        Datastore cursors, Async Urlfetch, App stats
                 Mar 2010        Denial-of-Service filtering, Availability option
                 May 2010        OpenID, OAuth, App Engine for Business, new bulkloader




Always free to get started
  ~5MM pageviews/month

      • 6.5 CPU hrs/day (not clock/deploy time)
      • 1 GB/day bandwidth (each incoming/outgoing)
      • 1 GB data storage
      • 2,000 recipients emailed
      • 100k tasks enqueued/day (or 1MM*)
      • 864k image manipulation calls/day (or 45MM*)
      • 657k URLfetch calls/day (or 46MM*)
      • 657k XMPP/instant msgs/day (or 46MM*)
      • 8.6MM Memcache calls/day (or 96MM*)
      • (1GB Blobstore storage, 140MM API calls)*
      • 1.3MM overall app requests/day (or 43MM*)


  * If billing is enabled, more free quota!!




                                                                                          18
Purchasing additional resources *




   *On top of ~5MM page view free monthly quota




             App Engine
              Roadmap
 - Long-running background tasks
 - Ability to reserve instances to reduce load
 - Datastore backup/dump and restore facility
 - Mapping operations across datasets
 - Raise request/response size limits for some APIs
 - See code.google.com/appengine/docs/roadmap.html




                                                      19
Code Lab: Getting Started
                 http://bit.ly/gcodelabs (codelabs)
                 http://code.google.com/appengine (download, docs, etc.)
                 http://code.google.com/p/googleappengine (issues, wiki, etc.)
                 http://code.google.com/eclipse (Eclipse plug-in)
                 http://appengine.google.com (login, app management)
                 http://googleappengine.blogspot.com (blog)




App Engine online resources



      http://code.google.com/appengine –
      downloads, docs, forums, FAQ, etc.

      http://appengine.google.com –
      managing your applications here

      http://googleappengine.blogspot.com
      – our blog

      Also check http://stackoverflow.com




                                                                                 20
Hello World

Linux, MacOS, etc. command-line:
  $ dev_appserver.py helloworld # run dev svr
  $ appcfg.py update helloworld # deploy live

Windows GUI (also avail for Mac):




Project Contents




         app.yaml – main configuration file

         index.yaml – automatically
         generated to index your data

         main.py – your main application
         "controller" code goes here




                                                21
Hello World




Hello World




              22
Testing Your Install


     $ cd google_appengine
     ~/Desktop/google_appengine/helloworld
     $ dev_appserver.py helloworld
     INFO         2009-03-04 17:51:22,354 __init__.py]
     .
     .
     .



                  (optionally use the launcher for Macs & PCs)




Hello World




                                                                 23
Registering



         By default, your apps hosted at:
         http://APP-ID.appspot.com




Create an App Id




                                            24
Modify 'app.yaml'



           application: helloworld
           version: 1
           runtime: python
           api_version: 1

           handlers:
           - url: .*
             script: main.py




Upload the default application


    $ cd google_appengine
    ~/Desktop/google_appengine/helloworld
    $ appcfg.py update helloworld
    Scanning files on local disk.
    Initiating update.
    Email: ...




                                            25
Check it out`




                Conclusion
                Summary and Wrap-up




                                      26
Summary: The Landscape

   •Cloud Computing: "… as a service" services
      SaaS – Google, Yahoo, SalesForce
      PaaS – *
      IaaS – Amazon EC2 & S3, Google Storage

   •*Platform as a Service offerings
      Google App Engine
      Microsoft Azure
      SalesForce force.com

   •Google App Engine
     Flexibility: Java or Python APIs, no 'lock-in'
     Security: sandbox environment, rich APIs
     Easy to Start: generous free quota
     Easy to Scale: uses Google infrastructure
     FUTURE: better performance, new features




                Thank You
                Questions?
                code.google.com/appengine
                googleappengine.blogspot.com
                code.google.com/p/googleappengine
                wesc+api@google.com




                                                      27

More Related Content

What's hot

Google app engine introduction
Google app engine introductionGoogle app engine introduction
Google app engine introduction
rajsandhu1989
 

What's hot (20)

App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010App Engine Overview @ Google Hackathon SXSW 2010
App Engine Overview @ Google Hackathon SXSW 2010
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
Developing Java Web Applications In Google App Engine
Developing Java Web Applications In Google App EngineDeveloping Java Web Applications In Google App Engine
Developing Java Web Applications In Google App Engine
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Google App Engine tutorial
Google App Engine tutorialGoogle App Engine tutorial
Google App Engine tutorial
 
I've (probably) been using Google App Engine for a week longer than you have
I've (probably) been using Google App Engine for a week longer than you haveI've (probably) been using Google App Engine for a week longer than you have
I've (probably) been using Google App Engine for a week longer than you have
 
Gentle App Engine Intro
Gentle App Engine IntroGentle App Engine Intro
Gentle App Engine Intro
 
Google App Engine: An Introduction
Google App Engine: An IntroductionGoogle App Engine: An Introduction
Google App Engine: An Introduction
 
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
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
 
App Engine
App EngineApp Engine
App Engine
 
Google App Engine - Overview #3
Google App Engine - Overview #3Google App Engine - Overview #3
Google App Engine - Overview #3
 
Google App engine
Google App engineGoogle App engine
Google App engine
 
Google Application Engine
Google Application EngineGoogle Application Engine
Google Application Engine
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google App Engine ppt
Google App Engine  pptGoogle App Engine  ppt
Google App Engine ppt
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 

Similar to What is Google App Engine?

Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
Chris Schalk
 
App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010
Chris Schalk
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststem
Sumit Kataria
 
Aloha on-rails-2009
Aloha on-rails-2009Aloha on-rails-2009
Aloha on-rails-2009
John Woodell
 

Similar to What is Google App Engine? (20)

Introduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesIntroduction to Google's Cloud Technologies
Introduction to Google's Cloud Technologies
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
 
What's new in App Engine and intro to App Engine for Business
What's new in App Engine and intro to App Engine for BusinessWhat's new in App Engine and intro to App Engine for Business
What's new in App Engine and intro to App Engine for Business
 
Introduction to Google Cloud Platform Technologies
Introduction to Google Cloud Platform TechnologiesIntroduction to Google Cloud Platform Technologies
Introduction to Google Cloud Platform Technologies
 
App Engine Overview Cloud Futures Publish
App Engine Overview Cloud Futures PublishApp Engine Overview Cloud Futures Publish
App Engine Overview Cloud Futures Publish
 
App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010
 
App engine cloud_comp_expo_nyc
App engine cloud_comp_expo_nycApp engine cloud_comp_expo_nyc
App engine cloud_comp_expo_nyc
 
Devfest09 App Engine Java
Devfest09  App Engine  JavaDevfest09  App Engine  Java
Devfest09 App Engine Java
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststem
 
Don Schwarz App Engine Talk
Don Schwarz App Engine TalkDon Schwarz App Engine Talk
Don Schwarz App Engine Talk
 
SamSegalResume
SamSegalResumeSamSegalResume
SamSegalResume
 
Aloha on-rails-2009
Aloha on-rails-2009Aloha on-rails-2009
Aloha on-rails-2009
 
Google App Engine - Overview #1
Google App Engine - Overview #1Google App Engine - Overview #1
Google App Engine - Overview #1
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
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
 
Google App Engine Overview and Update
Google App Engine Overview and UpdateGoogle App Engine Overview and Update
Google App Engine Overview and Update
 
App engine feature
App engine featureApp engine feature
App engine feature
 
Device APIs at TakeOff Conference
Device APIs at TakeOff ConferenceDevice APIs at TakeOff Conference
Device APIs at TakeOff Conference
 
OWF12/Java Moussine pouchkine Girard
OWF12/Java  Moussine pouchkine GirardOWF12/Java  Moussine pouchkine Girard
OWF12/Java Moussine pouchkine Girard
 
Google AppEngine @Open World Forum 2012 - 12 oct.2012
Google AppEngine @Open World Forum 2012 - 12 oct.2012Google AppEngine @Open World Forum 2012 - 12 oct.2012
Google AppEngine @Open World Forum 2012 - 12 oct.2012
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

What is Google App Engine?

  • 1. EuroPython 2010 Birmingham, UK Sun, 2010 Jul 18 What is… Google App Engine? Wesley Chun Developer Relations, Google App Engine wesc+api@google.com @wescpy :: @app_engine googleappengine.blogspot.com About the Speaker •Background Degrees in CS, Math, Music from UC Software engineer by profession Over 2 decades as a full-time architect & developer Original Yahoo!Mail engineering team member Previously at Sun, HP, Xilinx, Legato, Cisco/IronPort Currently in Developer Relations at Google •Python community volunteer Python conferences, user groups, and mailing lists Technical trainer: corporate training, public courses Author/co-author (books, articles, blogger, etc.) • Core Python Programming ([2009,] 2007, 2001) • Python Fundamentals LiveLessons DVD (2009) • Python Web Development with Django (2009) 1
  • 2. Cloud Computing What is it (besides being buzzword-compliant)? The Cloud Pyramid 2
  • 3. What is App Engine? •App Engine is a platform •You build & test your app •Then upload your app to Google •App Engine runs everything •No need to worry about machines, network, storage, scalability, etc. Challenges building web apps 3
  • 4. What keeps you up at night? Easy to start Easy to scale Easy to maintain 4
  • 5. We do the dirty work… The Components The pieces of Google App Engine 5
  • 6. Components Language Runtimes Web-based SDK Admin Console Scalable Infrastructure Components Linux GFS Scalable Infrastructure Bigtable Hardware 6
  • 7. Components Python Batteries & Java Included Runtimes Alternative API/Runtimes also available (more later) Flexible alternative 7
  • 8. Getting the job done The king of ease-of-use •Extremely rapid development •Very low barrier of entry •Simple yet robust syntax •Rich library of packages/modules •App Engine's first language API 8
  • 9. The king of enterprise development •Ubiquitous in Enterprise computing •Adheres to Java servlet standard •Rich library of packages/modules •Eclipse Plug-in support •Alternative language support Java compliant Servlet Standard 9
  • 10. Java Plug-n-Play Python & Java not enough? 10
  • 11. Components Web-based Admin Application Monitoring 11
  • 12. App Engine Monitoring Components Run Locally Easy Deploy SDK Manage Versions APIs 12
  • 13. Customer Service Ooops, we meant servicing customers! How many ______ ? 13
  • 15. …scales •3.6MM DAUs on FB •1.9MM DAUs on MS •Add Orkut, Bebo, Hi5, Friendster, Hyves, Ning… Gigya… 15
  • 16. … scales Not all apps are web-based!! - Need backoffice processing? Want to build your own? - Go cloud with App Engine! - No UI needed for app to talk to App Engine - Great place for user info i.e., high scores, contacts, medals, etc - Better user interface: taking user data off the phone to web, etc. 16
  • 17. Features and Futures Services and APIs now... and coming soon Rich set of App Engine services/APIs 17
  • 18. In review: an evolving platform Two years of App Engine and continually maturing… Apr 2008 Python launch May 2008 Memcache, Images API Jul 2008 Logs export Aug 2008 Batch write/delete Oct 2008 HTTPS support Dec 2008 Status dashboard, quota details Feb 2009 Billing, larger files Apr 2009 Java launch, DB import, cron support, SDC May 2009 Key-only queries Jun 2009 Task queues Aug 2009 Kindless queries Sep 2009 XMPP Oct 2009 Incoming email Dec 2009 Blobstore Feb 2010 Datastore cursors, Async Urlfetch, App stats Mar 2010 Denial-of-Service filtering, Availability option May 2010 OpenID, OAuth, App Engine for Business, new bulkloader Always free to get started ~5MM pageviews/month • 6.5 CPU hrs/day (not clock/deploy time) • 1 GB/day bandwidth (each incoming/outgoing) • 1 GB data storage • 2,000 recipients emailed • 100k tasks enqueued/day (or 1MM*) • 864k image manipulation calls/day (or 45MM*) • 657k URLfetch calls/day (or 46MM*) • 657k XMPP/instant msgs/day (or 46MM*) • 8.6MM Memcache calls/day (or 96MM*) • (1GB Blobstore storage, 140MM API calls)* • 1.3MM overall app requests/day (or 43MM*) * If billing is enabled, more free quota!! 18
  • 19. Purchasing additional resources * *On top of ~5MM page view free monthly quota App Engine Roadmap - Long-running background tasks - Ability to reserve instances to reduce load - Datastore backup/dump and restore facility - Mapping operations across datasets - Raise request/response size limits for some APIs - See code.google.com/appengine/docs/roadmap.html 19
  • 20. Code Lab: Getting Started http://bit.ly/gcodelabs (codelabs) http://code.google.com/appengine (download, docs, etc.) http://code.google.com/p/googleappengine (issues, wiki, etc.) http://code.google.com/eclipse (Eclipse plug-in) http://appengine.google.com (login, app management) http://googleappengine.blogspot.com (blog) App Engine online resources http://code.google.com/appengine – downloads, docs, forums, FAQ, etc. http://appengine.google.com – managing your applications here http://googleappengine.blogspot.com – our blog Also check http://stackoverflow.com 20
  • 21. Hello World Linux, MacOS, etc. command-line: $ dev_appserver.py helloworld # run dev svr $ appcfg.py update helloworld # deploy live Windows GUI (also avail for Mac): Project Contents app.yaml – main configuration file index.yaml – automatically generated to index your data main.py – your main application "controller" code goes here 21
  • 23. Testing Your Install $ cd google_appengine ~/Desktop/google_appengine/helloworld $ dev_appserver.py helloworld INFO 2009-03-04 17:51:22,354 __init__.py] . . . (optionally use the launcher for Macs & PCs) Hello World 23
  • 24. Registering By default, your apps hosted at: http://APP-ID.appspot.com Create an App Id 24
  • 25. Modify 'app.yaml' application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: .* script: main.py Upload the default application $ cd google_appengine ~/Desktop/google_appengine/helloworld $ appcfg.py update helloworld Scanning files on local disk. Initiating update. Email: ... 25
  • 26. Check it out` Conclusion Summary and Wrap-up 26
  • 27. Summary: The Landscape •Cloud Computing: "… as a service" services SaaS – Google, Yahoo, SalesForce PaaS – * IaaS – Amazon EC2 & S3, Google Storage •*Platform as a Service offerings Google App Engine Microsoft Azure SalesForce force.com •Google App Engine Flexibility: Java or Python APIs, no 'lock-in' Security: sandbox environment, rich APIs Easy to Start: generous free quota Easy to Scale: uses Google infrastructure FUTURE: better performance, new features Thank You Questions? code.google.com/appengine googleappengine.blogspot.com code.google.com/p/googleappengine wesc+api@google.com 27