I thought I'd pass on my recent experience deploying an app to GAE with Python 
2.7. My motivation was the new features available, in particular concurrent 
requests and WSGI operation, and secondarily some other performance 
improvements (like the native JSON library). See 
http://code.google.com/appengine/docs/python/python27/newin27.html for more 
info.

There are a couple of downsides.

1. The App Launcher doesn't support 2.7 yet, so you need to deploy from the 
command line. I'm not entirely clear on whether there's any way at all to run a 
2.7 app locally.

2. You must use the High Replication datastore. That's not necessarily a bad 
thing, but a) it's more expensive (if you have enough traffic to be paying), 
and b) run_in_transaction only works with ancestor queries, which the DAL does 
not support.

Fortunately, my db requirements aren't too complicated, and I was able to put 
all my db accesses behind a class that allowed me to talk to the datastore 
through its native API while preserving compatibility with DAL on other 
servers. (There were some other advantages to doing this, and it was an 
interesting learning experience.)

The trunk's app.example.yaml defaults to 2.7; that part was fairly simple (it 
supports 2.5 as well; just change some commenting-out stuff). 

I like the way GAE is going, and I really like being able to deploy an app in 
the cloud without having to become a sysadmin.

Reply via email to