SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
In the modern web, the user rules. Nearly every successful web app has to worry about scaling to an exponentially growing user base and giving those users multiple ways of interacting with their data. Pamela Fox, Maps API Support Engineer & Developer advocate, provides an overview of two technologies - Google App Engine and the Google Data APIs - that aim to make web development and data portability easier.
In the modern web, the user rules. Nearly every successful web app has to worry about scaling to an exponentially growing user base and giving those users multiple ways of interacting with their data. Pamela Fox, Maps API Support Engineer & Developer advocate, provides an overview of two technologies - Google App Engine and the Google Data APIs - that aim to make web development and data portability easier.
13.
What Is App Engine? <ul><li>Lets you run your web application on top of Google’s infrastructure. </li></ul><ul><li>Servers </li></ul><ul><li>Network </li></ul><ul><li>Datastore </li></ul><ul><li>Backups </li></ul><ul><li>Pagers </li></ul>“ We wear pagers so you don’t have to.” — Guido van Rossum Scalable }
19.
Data Store db.GqlQuery("SELECT * FROM Shout " "WHERE who >= 'b ' AND who < ' c ' " "ORDER BY when DESC").fetch(100) query = Shout.all() query.order('-date') query.filter('who >=', 'b') query.filter('who <', ‘c') shouts = query.fetch(100)
27.
How Do You Make Things Accessible? <ul><li>An application programming interface (API) is a set of functions, procedures, methods or classes that an operating system , library or service provides to support requests made by computer programs . </li></ul><ul><li>Source: Wikipedia </li></ul>A pplication P rogramming I nterface ( )
41.
The Google Data Protocol <ul><li>GET /myFeed </li></ul><ul><li>200 OK </li></ul><ul><li><?xml version="1.0"?> </li></ul><ul><li><feed xmlns=" http://www.w3.org/2005/Atom "> </li></ul><ul><li><title>Foo</title> </li></ul><ul><li><updated>2006-01-23T16:25:00-08:00</updated> </li></ul><ul><li><id> http://www.example.com/myFeed </id> </li></ul><ul><li><author> </li></ul><ul><li><name>Jo March</name> </li></ul><ul><li></author> </li></ul><ul><li><link href="/myFeed" rel="self"/> </li></ul><ul><li></feed> </li></ul>Requesting a feed or resource
42.
The Google Data Protocol <ul><li>POST /myFeed </li></ul><ul><li><?xml version="1.0"?> </li></ul><ul><li><entry xmlns=" http://www.w3.org/2005/Atom "> </li></ul><ul><li><author> </li></ul><ul><li><name>Elizabeth Bennet</name> </li></ul><ul><li><email> [email_address] </email> </li></ul><ul><li></author> </li></ul><ul><li><title type="text">Entry 1</title> </li></ul><ul><li><content type="text">This is my entry</content> </li></ul><ul><li></entry> </li></ul>Creating a new resource
43.
The Google Data Protocol <ul><li>201 CREATED </li></ul><ul><li><?xml version="1.0"?> </li></ul><ul><li><entry xmlns=" http://www.w3.org/2005/Atom "> </li></ul><ul><li><id> http://www.example.com/id/1 </id> </li></ul><ul><li><link rel="edit" href=" http://example.com/myFeed/1/1/ "/> </li></ul><ul><li><updated>2006-01-23T16:26:03-08:00</updated> </li></ul><ul><li><author> </li></ul><ul><li><name>Elizabeth Bennet</name> </li></ul><ul><li><email> [email_address] </email> </li></ul><ul><li></author> </li></ul><ul><li><title type="text">Entry 1</title> </li></ul><ul><li><content type="text">This is my entry</content> </li></ul><ul><li></entry> </li></ul>Creating a new resource
44.
The Google Data Protocol <ul><li>PUT /myFeed/1/1/ </li></ul><ul><li><?xml version="1.0"?> </li></ul><ul><li><entry xmlns=" http://www.w3.org/2005/Atom "> </li></ul><ul><li><id> http://www.example.com/id/1 </id> </li></ul><ul><li><link rel="edit" href=" http://example.com/myFeed/1/1/ "/> </li></ul><ul><li><updated>2006-01-23T16:28:05-08:00</updated> </li></ul><ul><li><author> </li></ul><ul><li><name>Elizabeth Bennet</name> </li></ul><ul><li><email> [email_address] </email> </li></ul><ul><li></author> </li></ul><ul><li><title type="text">Entry 1</title> </li></ul><ul><li><content type="text">This is my first entry.</content> </li></ul><ul><li></entry> </li></ul>Updating an entry
45.
The Google Data Protocol <ul><li>200 OK </li></ul><ul><li><?xml version="1.0"?> </li></ul><ul><li><entry xmlns=" http://www.w3.org/2005/Atom "> </li></ul><ul><li><id> http://www.example.com/id/1 </id> </li></ul><ul><li><link rel="edit" href=" http://example.com/myFeed/1/2/ "/> </li></ul><ul><li><updated>2006-01-23T16:28:05-08:00</updated> </li></ul><ul><li><author> </li></ul><ul><li><name>Elizabeth Bennet</name> </li></ul><ul><li><email> [email_address] </email> </li></ul><ul><li></author> </li></ul><ul><li><title type="text">Entry 1</title> </li></ul><ul><li><content type="text">This is my first entry.</content> </li></ul><ul><li></entry> </li></ul>Updating an entry
46.
The Google Data Protocol <ul><li>DELETE /myFeed/1/2/ </li></ul><ul><li>200 OK </li></ul>Updating an entry