Since I know very few details, I could be completely wrong, but it seems 
like this is a candidate for the typical high throughput 'fan-in' batch 
processing. The way I prefer to do this is:

1) Add each work item to a Pull queue
2) Create a named task on a Push queue at your desired interval (say 1 
second)
3) The named task executes (on a front-end or back-end according to your 
needs) and pulls the existing work from the Push queue in batch
4) Process the batch of work as desired (i.e. update the leader-board)

You still cannot guarantee latency, and I think it is hard to do that under 
any circumstances, but it does eliminate the need to write temporary work 
objects to the datastore (you are using the task queue system instead).

On Tuesday, July 31, 2012 12:35:26 PM UTC-4, Richard wrote:
>
> Reaping is done using:
>
>     allScores = Score.all()
>     for s in allScores:
>          etc
>
> I could store each entry with a unique key (user's id), but my 
> understanding is that supplying a key name does not improve things.  I 
> don't know who is in the game a priori, so I don't know how to do a fully 
> consistent 'get' in batch mode.....
>
>
> On Tuesday, July 31, 2012 12:21:03 PM UTC-4, D X wrote:
>>
>> How are you doing the reaps?  Are you doing an eventually-consistent 
>> query, or fully-consistent get by keys?
>>
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/V6cBwLsqQPUJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to