in context to how it'd fit into NBA 2K18 MT my project's needs.I was a bit surprised about how well described it is, at least relative to Sun's Java/Javadoc references. I am sure that for Java developers, the documentation is perfectly fine but for people starting out, it's a bit painful to figure out the difference between J2SE, J2EE, that Java "2″ is actually v1.2, etc etc Anyway, no need to go into that here, right ;)Second: will GAE do what I need?Once I understand the general capabilities of GAE, I

 

myself if it will do what I need? Well, I have a ton of NBA 2K17 MT Coins ideas floating in my head, but to put this in perspective for a "simple game server," here are some key points:GAE scales very well with multiple users (each request is on a separate thread)Storing intra-gamestate will be too expensive (GAE stores all state in database, so high-frequency read/writes will be monetarily expensive)Storing macro-level metagame information (low-frequency user information and matchmaking data) seems to be

 

good match for GAE's feature setPer-user server polling is the only viable option for GAE right now (a socket API is in development but not yet ready)Threading is not supported right now (in development), so no multithreaded fanciness is available.Supports XMPP based chat protocolTo summarize, GAE seems suitable for synchronizing with users every few minutes, so for save games, matchmaking, top scores, achievements, etc. but not for high-frequency useSo this is all fine by

 

. Current GAE features seems to restrict my game-use to matchmaking services only, though if I want to get creative with the XMPP functionality, it may be possible to introduce a high-latency gamestate server, though the adding of sockets to GAE in the future also looks promising.Third: Find a good book.I searched Amazon for the highest rated books on the matter, and settled with "Programming Google App Engine".I am currently on chapter 2 of this book, following the tutorials to put