Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-18 Thread Nick Johnson (Google)
Hi,

The easiest way to do this is to not do it, if you'll forgive the
misdirection. What is the nature of the update you need to do? Is there a
way you can avoid having to update every record, or to update only modified
records? What is the upper-limit on players per game, and do the updates for
one player depend on what the other player is doing?

It's effectively impossible to offer useful suggestions without more
concrete details about what you're actually doing.

-Nick Johnson

On Fri, Jul 15, 2011 at 9:15 PM, Zippoxer zippo...@gmail.com wrote:

 I'm working on a game and that game will have an update that will run every
 10 seconds.
 In this update every player's data is fetched from the datastore, processed
 by my code (changed) and saved to the datastore.
 My worry is how long this update would take if there are 2,000 players in
 the datastore. I'm almost sure this would take above 30 seconds, especially
 because I use Python. But I may be wrong in my expectation or in the method
 of the update.

 Thanks for reading.

 --
 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/-/XuVreG-Uld8J.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Nick Johnson, Developer Programs Engineer, App Engine

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



[google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Zippoxer
I'm working on a game and that game will have an update that will run every 
10 seconds.
In this update every player's data is fetched from the datastore, processed 
by my code (changed) and saved to the datastore.
My worry is how long this update would take if there are 2,000 players in 
the datastore. I'm almost sure this would take above 30 seconds, especially 
because I use Python. But I may be wrong in my expectation or in the method 
of the update.

Thanks for reading.

-- 
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/-/XuVreG-Uld8J.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Branko Vukelic
Why not use task queue for that?

On Fri, Jul 15, 2011 at 1:15 PM, Zippoxer zippo...@gmail.com wrote:
 I'm working on a game and that game will have an update that will run every
 10 seconds.
 In this update every player's data is fetched from the datastore, processed
 by my code (changed) and saved to the datastore.
 My worry is how long this update would take if there are 2,000 players in
 the datastore. I'm almost sure this would take above 30 seconds, especially
 because I use Python. But I may be wrong in my expectation or in the method
 of the update.
 Thanks for reading.

 --
 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/-/XuVreG-Uld8J.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Branko Vukelić
bra...@herdhound.com

Lead Developer
Herd Hound (tm) - Travel that doesn't bite
www.herdhound.com

Love coffee? You might love Loveffee, too.
loveffee.appspot.com

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



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Zippoxer
But how will it help me? It will still take the same time.
I asked for a way to make the update process (which I described above) 
quicker.

-- 
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/-/SZ0bhx1As8MJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Brian Davenport
Why not store the user data in memcache and work with that if you can?
 Followed by a periodical push into the datastore.  Have your list of users
that need to be updated in a memcache key as well.

I am doing this with a forum I am kicking about, storing the thread text in
a memcache key, and having a memcache key store a list of threads, when
something changes it updates the keys.  I also fire off a datastore write.
 When there is a miss on the key it pulls from the datastore, shoves back
into memcache, and on to processing.


*Brian Davenport*




On Fri, Jul 15, 2011 at 09:19, Zippoxer zippo...@gmail.com wrote:

 But how will it help me? It will still take the same time.
 I asked for a way to make the update process (which I described above)
 quicker.

 --
 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/-/SZ0bhx1As8MJ.

 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


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



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Zippoxer
That's a great idea, thanks :)

-- 
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/-/W8-_zqOlSFEJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Simon Knott
The task queue option is a good one - task queue requests have 10 minutes to 
run, not 30 seconds.  Combined with Brian's suggestion below, you shouldn't 
run into any issues.

-- 
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/-/vG7PcSgBnSoJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Robert Kluin
If you've designed your data model properly writing 2000 entities
every 10 seconds probably won't matter much.

+1 to task queues and / or cron.





On Friday, July 15, 2011, Raymond C. windz...@gmail.com wrote:
 If the 2000 players data can fit into one entity you may use one entity to 
 store all players' data.  Otherwise, I would say what you want to do is not 
 suitable to be done on AppEngine, which the datastore designed to scale but 
 not fast and write often. (in your case which is 2000 record updates every 10 
 seconds)
 There are definitely workarounds and tricks you can employ to workaround all 
 the AppEngine's limitation.  However, if you have not started yet, you should 
 definitely consider to do it on other platform first because it would be 
 hundred times easier.  Especially you are using Python which the future is 
 not certain yet on AppEngine.









 --
 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/-/rMAaRbmF6g4J.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine?hl=en.


-- 
--
Robert Kluin
Ezox Systems, LLC

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



Re: [google-appengine] Worried about performance of an HTTP based game.

2011-07-15 Thread Tim Hoffman
Another alternative to consider is using a permanent backend to manage 
persistent game state.

That way it only needs to write out changes and not keep reading in all the 
records, (apart from new users joining etc).

Just a thought.

T


-- 
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/-/usVuxcmN3SgJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.