Here's a talk on scalability in regards to the data-store: http://www.youtube.com/watch?v=Oh9_t5W6MTE&feature=channel
Here's my opinion (gained from limited experience): On App Engine you basically have to make every request a small request. ------------(case 1 - product page)--------------------- For instance, on my site, for a product page, I have several requests: 1 request for the basic product page data (including up to 2 amazon web service calls - using memcache where appropriate) 5 more requests for the bookseller prices (via AJAX) 1 additional amazon request to pull up "similar products" (via AJAX) 1 request to pull up everyone's tags (via AJAX) 1 more request to pull up your tags (if you're logged in, via AJAX) So that's 9 requests and none of them try to write data. -------------(case 2 - someone tags a book)------------- When a user is logged in and "tags" a book - currently I have that all broken apart as well: 1 request to write the tag in the data-store 6 more requests to update specific counters (for the tag, the book, the user, etc) This is broken into 7 requests to avoid a per-request quota warning. Anytime you're updating data you have to be concerned with the "per- request" quota seen in your logs as a warning. ---------------(memcache)------------------------- On every page, you have to make sure you're using memcache where its appropriate. Never do something twice in python, the template engine, or the data-store that really doesn't need to be done. For instance, on my site, when a user is not logged in, and they request a product page, any subsequent user will get a cached copy of that page for the next few minutes. Nothing's really changed in the few minutes that pass, so why do all the work of getting the page ready again? ------ my disclaimer -------------- I'm sure you can find a lot of other resources on how to make a scalable app using app-engine. The stuff I'm telling you here is just my limited take on it -- learned by a lot of trial and error and reading documentation :-) Here's my site if you want to check it out: http://www.bookdope.com . Of course, my site is protected by obscurity ( no one knows about it ) :-) so my ideas might suck under the load you're talking about. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---