Well, it sounds like you're wanting to have the aggregation task fired off
when a count event happens for a user. So, then, as you mention, you'd need
a way to check if there wasn't already an aggregation task running. And, in
the worst case scenario, you could have two tasks get fired off at
Though, let me re-iterate... all the round-about stuff I'm talking about is
something to consider if you don't want to try and modify the sharded
counter technique mentioned in this article:
http://code.google.com/appengine/articles/sharding_counters.html
oh, and duh.. the first part of that article does the sharded counting..
using transactions without memcached.
So, presumably, it should do exactly what you want.
you just need to modify that to allow counting for an arbitrary number of
users.
On Sat, Nov 28, 2009 at 8:30 PM, Eli Jones