This is great. We just turned on reserved instances for http://gri.pe (select "always on" in the billing section). It costs $9/month to keep three instances warm all the time. That's peanuts compared to saving the 10s warmup time if your traffic drops off for a minute.
Another huge item: up to 10 minutes of background processing on a single task queue callback:
No more 30-second limit for background work - With this release,
we’ve significantly raised this limit for offline requests from
Task Queue and Cron: you can now run for up to 10 minutes without
interruption.
Make sure you turn on the new warmup handlers for your applications too. With this, AppEngine will deliver a request to /_ah/warmup and let it complete before serving traffic from a new instance.
Can someone explain this "always on" in more detail? I don't have much experience with Google App Engine, does this mean apps not used frequently have a startup time? So, if noone accessed the site in the last few minutes, the first user accessing has to wait some time for use?
Exactly right. Especially with larger apps, the "first" user often sees some latency while the app is loaded into memory, static data structures are re-created, etc. The always on feature should keep this from happening.
Perhaps I'm being naive here, but doesn't an uptime-service like Pingdom do the job? They basically ping the site every 5 minutes which should keep the instance alive.
Another huge item: up to 10 minutes of background processing on a single task queue callback:
Make sure you turn on the new warmup handlers for your applications too. With this, AppEngine will deliver a request to /_ah/warmup and let it complete before serving traffic from a new instance.XML:
YAML: