Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I intend to make browser based MMO game. Something from Master of Orion genre but with more accent on command ship operations.

I've done some tests and research and turns out that indeed, for dictionary type data (like technology tree nodes, inventory items, mission definitions) the XML files seem best approach. But there will be whole lot of them and they are inter-dependent so performance-wise there is no option to load them on each HTTP request.

I want system where application starts, loads definitions to dictionaries from XML and keeps it in memory for the whole time the application works. Application awaits requests and responds them with XHTML using the dictionary data from array/collection kept in memory. All the other data like players' data, alliances' data etc. comes normally from relational DB. I think this model would put much less strain on DB and whole application would be much less resource-hungry.

So PHP I know and used is not an option, right?. Is my only option some Java server technology like JSF? I coded in Java previously, but it was Java SE and it didn't make good impression on me. So are there alternatives? If not what specific Java server technology would be most suited?

share|improve this question

closed as not constructive by Philipp, Josh Petrie, Sean Middleditch, Trevor Powell, bummzack Feb 13 '13 at 8:45

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

Welcome to Unfortunately, "What technology to use" questions are considered off-topic here because they are subjective and lead to discussion instead of definite answers. Please read the FAQ before posting. – Philipp Feb 11 '13 at 21:17

As far as I can see, you should be able to load your resources once and then keep them in memory.

It's unclear from your question whether you're talking about the client or server - but I'll assume server (JSF is presumably used in a HTTP server here?)

Surely it is possible to create a shared data structure which can be used by multiple threads.

Alternatively, do you need to load these data structures each request? Can you not simply load them on-demand?

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.