

Django 1.2 on Google App Engine - tosh
http://www.deck.cc/django_1.2_on_google_app_engine.html

======
davepeck
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.

~~~
tosh
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.

~~~
davepeck
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.

------
MartinMond
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.

~~~
endlessvoid94
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.

~~~
DenisM
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?

~~~
endlessvoid94
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!

------
hswolff
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. :)

