Another drawback for using Task Queue is its limitation. Max number of
active queues is 100. Max invocations per second per queue is 50. So
Max jobs per second 100*50 = 500. If my app has 10000 users and for
every one I need a transaction -> so it is not enough resources to
accomplish that.
I have also read about an existence of distributed transacions:
http://www.google.com/events/io/2009/sessions/DesignDistributedTransactionLayerAppEngine.html
It seems it is very hard to implement and there is not any robust java
lib for that.
So now my choice is to use 'deferred completion' approach described
here: http://blog.notdot.net/2009/9/Distributed-Transactions-on-App-Engine.
For rolling forward I don't want to use a queue or the cron because of
their limitations. I prefer to make rolling forward failed transaction
just during a user request. Thus I can get round limitations and
synchronization issues: e.g. a queue hasn't rolled forward failed
transaction but my app needs to do some work based on a failed
transaction.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to