On Fri, Feb 18, 2011 at 2:04 PM, Markus Roth <[email protected]> wrote:
> I am currently developing a real-time multiplayer game, and have been
> evaluating various cloud-based hosting solutions. I am unsure whether
> App Engine fits my needs, and would be grateful for any feedback.
>
> In essence, I want the system to work like this: Player A calculates
> round n, and generates a hash out of the game state at the end of that
> round. He then sends his commands for that round, and the hash, as a
> http POST to the server. Player B does the same thing, in parallel.
>
> The server, while handling the POST from a player, first writes the
> received hash code to the memcache. If the hash from the other player
> is not yet in the memcache, it waits and periodically checks the
> memcache for the other players hash. As soon as both hashes are in the
> memcache, it compares them for equality. If they are equal, the server
> sends the commands of each player to the respectively other one as the
> http response.

The channel API would let you eliminate polling.

Another idea would be to use a Javascript XMPP client inside the
browser for chat. GAE can talk XMPP.

>
> A round like that should last around half a second, meaning two
> requests per player per second.
>
> Of course, this way of doing it will only work if there are at least
> two instances of the application running, as two requests must be
> dealt with in parallel. Also, the memory cache must be consistent over
> all instances, be fairly reliable, and update immediately.
>
> Is there a way to enforce that two instances of the app are always
> running? Are there glaringly obvious flaws in my design? Do you think
> an architecture like this might work on App Engine? If not, what could
> based solution would you suggest?
>
> I have also posted this question to StackOverflow[1]
>
> Thank you very much for your feedback.
>
> [1]http://stackoverflow.com/questions/5045329/is-a-real-time-
> multiplayer-game-using-google-app-engine-feasible
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> 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.
>
>



-- 
Jon Smirl
[email protected]

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
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