back
8 comments
Careful with the zipimport approach to running Django: you may see very high response times for "cold" requests to App Engine. If you can wait, it is likely that GOOG will eventually support Django 1.2 via the use_library() call, which seems to give far better performance.
You are absolutely right, thank you for the advice. I am going to update the article as soon as django 1.2 is supported via use_library() to reflect this. Cold startup time really is a bummer for low traffic apps.
Yep, cold hits are a pain. They're bad for low traffic apps because App Engine will deallocate all resources if your app hasn't been hit in a while. Interestingly, cold hits are bad for apps with spiking traffic, too: as your load spikes, App Engine tasks new machines each of which may experience a cold hit. (It depends on their caching internals, subject to change.)

As for use_library() vs App Engine Patch: for me, the perf issue is primary. On the other hand, AEP offers a lot of functionality out-of-box that you don't get with raw use_library() django.

I always was sceptical about the suitability of Google's App Engine for 'real' Web Apps. It just seemed that too many features where missing.

But after Google IO 2010 I have reconsidered. Google obviously has placed a firm commitment behind GAE.

I run www.thathigh.com on google appengine and I can say it handles extremely well under some pretty high loads.

Every once in awhile Django will barf but it always dies and restarts nearly instantly. If you know how to optimize your app for appengine, it's a very sustainable solution.

I have a pretty good grasp on SQL+.NET and use those for AJAX backend. Would you recommend switching to app engine? Any particular advice?
Sorry, just now saw this.

I've only used Python on appengine, so I can't really comment on your particular experience. It supports Java, and it's super-important to realize that you won't be working with a database, you'll be working with a dataSTORE (which is comprised of hash tables, sorta).

give it a shot. if you hate it, quit!

Thanks for this. I was literally searching for this information yesterday and you are all too right in saying this how-to information is scarce. Kudos. :)