Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19...
Transcript of Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19...
![Page 1: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/1.jpg)
Developing with Google App Engine
Dan Morrill, Developer Advocate
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 1
![Page 2: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/2.jpg)
DevelopingwithGoogleAppEngine
Introduction
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 2
![Page 3: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/3.jpg)
Google App EngineChallenges building web apps
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 3
![Page 4: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/4.jpg)
Run your web applications on Google Infrastructure
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 4
![Page 5: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/5.jpg)
Easy to start.Easy to scale.
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 5
![Page 6: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/6.jpg)
creative commons licensed photograph from cote
1. Scalable Serving ArchitectureColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 6
![Page 7: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/7.jpg)
App Engine Front End
App Engine Front End
App Engine Front End
Incoming Requests
AppServer AppServer AppServer
Load Balancer
1. Scalable Serving ArchitectureColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 7
![Page 8: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/8.jpg)
App Engine Front End
App Engine Front End
App Engine Front End
Incoming Requests
AppServer AppServer AppServer
Load Balancer
1. Scalable Serving Architecture
AppServer
API Layer
Other Google Infrastructure
- Bigtable
- Google Accounts
- Memcache
- Image manipulation
App App App
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 8
![Page 9: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/9.jpg)
Wow. That isone big table.
2. Distributed DatastoreColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 9
![Page 10: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/10.jpg)
- A sharded, sorted array- Supports queries, transactions- It’s not SQL!
2. Distributed DatastoreColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 10
![Page 11: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/11.jpg)
class Shout(db.Model):
message = db.StringProperty(required=True)
who = db.StringProperty()
when = db.DateTimeProperty(auto_now_add=True)
Object Model for DatastoreColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 11
![Page 12: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/12.jpg)
db.GqlQuery(“SELECT * FROM Shout “
“WHERE who = 'brett’”
“ORDER BY when DESC”).fetch(100)
Query Language (“GQL”)Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 12
![Page 13: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/13.jpg)
3. Python Runtime & (most) Libraries
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 13
![Page 14: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/14.jpg)
4. Open Source SDKColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 14
![Page 15: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/15.jpg)
5. Web-based Admin Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 15
![Page 16: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/16.jpg)
More LanguagesPurchase Additional Quota
Large File SupportSSL Support
Offline Processing
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 16
![Page 17: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/17.jpg)
DevelopingwithGoogleAppEngine
Using App Engine
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 17
![Page 18: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/18.jpg)
DevelopingwithGoogleAppEngine
Getting Started• Sign up for an account
• Download the SDK
• Write your code
• Test on your workstation
• Deploy
• Configure your domain
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 18
![Page 19: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/19.jpg)
DevelopingwithGoogleAppEngine
Writing Your App• Decide on a data model
• Write business logic
• Write front-end pages
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 19
![Page 20: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/20.jpg)
DevelopingwithGoogleAppEngine
Testing & Debugging• Use the Dev App Server included in SDK
• Browse to build-in HTTP server
• Test application
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 20
![Page 21: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/21.jpg)
DevelopingwithGoogleAppEngine
Deploying Your App• Command-line: ‘appcfg.py’
• On Mac: GUI utility
• Visit your app on appspot.com
• ...or set up a domain of your own
• Monitor on the dashboard
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 21
![Page 22: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/22.jpg)
DevelopingwithGoogleAppEngine
What’s it cost?• Free quota to get started: 500MB storage and enough CPU and
bandwidth for about 5 million pageviews per month
• $0.10 - $0.12 per CPU core-hour
• $0.15 - $0.18 per GB-month of storage
• $0.11 - $0.13 per GB outgoing bandwidth
• $0.09 - $0.11 per GB incoming bandwidth
• Note: billing not active during current preview period
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 22
![Page 23: Google App Engine - Software Summit€¦ · Google App Engine Colorado Software Summit: October 19 Ð 24, 2008 © Copyright 2008, Google. Created Date: 10/24/2008 7:22:42 PM](https://reader031.fdocuments.us/reader031/viewer/2022013010/5f6b34311b541d41e624c5f0/html5/thumbnails/23.jpg)
http://code.google.com/appengine/
Google App Engine
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 23