google app engine - software summit€¦ · google app engine colorado software summit: october 19...
TRANSCRIPT
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
DevelopingwithGoogleAppEngine
Introduction
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 2
Google App EngineChallenges building web apps
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 3
Run your web applications on Google Infrastructure
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 4
Easy to start.Easy to scale.
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 5
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
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
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
Wow. That isone big table.
2. Distributed DatastoreColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 9
- 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
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
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
3. Python Runtime & (most) Libraries
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 13
4. Open Source SDKColorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 14
5. Web-based Admin Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 15
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
DevelopingwithGoogleAppEngine
Using App Engine
Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Google
Dan Morrill — Google App Engine Slide 17
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
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
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
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
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
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