Re: [google-appengine] Worried about performance of an HTTP based game.
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.
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.
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.
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.
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.
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.
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.
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.
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.