You might want to look into the algorithm for scheduling workers, as
mentioned here
http://code.google.com/appengine/docs/java/config/queue.html#Queue_Definitions
(push queues only)
Task queues use a "token bucket" algorithm for dequeueing tasks. The
bucket size limits how fast the queue is proc
The problem with a cron every 30 seconds is that it will fire, and
start up instances if you have none running - or extra instances if
you have one busy - even where there is no "work" to be done.
Maybe you have this non-time-critical work to be done once a day (as
is my case also) and you don't