Database access from multiple rooms/servers?

Options
lazalong
edited October 2011 in Photon Server
Hey, I need a little advice,

Do you think MySQL is thread-safe and fast enough to have accesses on a single database from multiple games/rooms?
Rooms that can even be on different servers.

Or would you have one database per game/room? Per server?
Would you also make a separate databases to deal with chats and market orders as those are global and not local?

Or would you begin with a single database and partition later if the need arises?

My goal is to have thousands of players. I will try to limit the number of players per room although I don't know yet what the performance will permit.

Thanks in advance

Comments

  • Tobias
    Options
    Do you really want to persist chat? Few games do that...
    MySQL is fine as start but it won't support millions of players, so there is probably a performance limit.

    By the way: You can't just read about performance. To a certain extend, you have to start and test it yourself. Even if some webpages are able to run on MySQL, maybe it's not suitable for your game. There's too much room for different requirements and implementations.
    Don't worry yourself about thousands of players in the first place. Get going and grow with your user base.
  • Storing 1-2 days of chat is only a "feature" I would implement if I need to. As far as I know some legislation require businesses to store all emails and electronic communications for legal reasons. I don't know yet if this applies to chat.
    Anyway if I ban a paying customer because of his language I prefer to have some proof that he breached his agreement.

    Of course I know I will need to test and I will use one of your time-limited license to do exactly that. I was merely asking for experiences to determine what database structure I need.

    Anyway I will continue with a single database for now.
  • why not write the chat per user to a plain text file on the server?
    (and keep default 7 days of history, assuming complains must be filed within 3 days of occuring)
    This is more easy if you want to run a backup of your logs and keeps you database cleaner...according to me.