Torchlight 2 best variant class3/18/2024 ![]() This is important (both for fairness and being able to have coherent interactions between game objects) but also unique compared to most online services. Yeah, the main problem in these kind of discussions is that most people used to work with dbs are used to do online services, which have to be efficient at the cost of users not always having the same data while for a MMO, there have to be a unique "reality" state of the world which keeps everything in sync so that representations are equivalent for all users. For example, memcached (simple key->value nosql solution) in front of a mysql or postgres cluster is very scaleable and you get to retain your easy relationship management. ![]() The type of data you are storing falls neatly into relationships, and you can even scale by frontending your SQL solution with a NoSQL solution. I've been outright told that SQL solutions aren't powerful enough for the type of real-time distributed app that an MMO game is, but I just don't see it that way. Switching away from MSSQL would not be a difficult task down the road, as long as you don't use anything specific to TSQL or whatever their implementation is.Ĭ6burns wrote:I've had this discussion many times (sql vs nosql, relational vs heirarchical data model, etc). if things get off the ground more will join the team and some brave soul can take over the data situation. I was surprised to see MSSQL as the choice, but one thing I often recommend is to go with what you know, as (in my opinion) it is better to become a victim of your own success than to not get your project off the ground. I've had this discussion many times (sql vs nosql, relational vs heirarchical data model, etc). For a bigger world, I guess the strategy of Eve Online is certainly the best currently. ![]() It would actually work if you have something like a unique MongoDB database, or one unique such db for each part of the world, but you wouldn't benefit from any kind of node scalability, which is almost not possible if you don't scale the world itself the same way.įor a small online game, going with a usual SQL db is enough (except maybe it's hard to make evolve). Also it makes possible to optimize some systems/node because there is a lot of people getting there often. So, inside one system you have one unique source of information about the game state, but having the world cut in these different systems makes easy to manage a very big world. Not all NoSQL database have this philosopy of not guaranteeing changes to be propagated to all the nodes immediately, but most do (I don't know one that doesn't, as this philisophy is basically about making sure the data is not centralized), which exclude them from being used in MMOS or any soft real time kind of games (even turn by turn as you have no guarantee about the time for propagating information through nodes).įor example, Eve Online uses grapes of MySQL (maybe now MariaDB) based servers which each one manage one solar system. Depends on the information but most information in a MMO have to be the same for everybody at the same time, otherwise you can't even have local interactions as different clients will get different informations.
0 Comments
Leave a Reply.AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |