我正在为即将进行的大规模在线游戏收集信息。我有使用MEGA MASSIVE类似农场的游戏(数百万dau)的经验,而SQL数据库是很好的解决方案。我还使用了大量的在线游戏,其中使用了NoSQL数据库,并且这个特定的数据库(Mongo)不是最合适的 - 当很多连接和大量并发写入正在进行时很糟糕。
我正在寻找关于现代大规模在线游戏的事实,基准,演示以及有关其后端基础设施,特别是数据库的技术细节。
例如我对以下内容感兴趣:
答案 0 :(得分:0)
从硬碰撞非常罕见以及何时发生的前提开始 一些信息丢失不会是悲剧。
数据库的使用不应与日常管理密切相关 游戏。常规事件应该通过更短暂的存储来管理。一些 辅助流程应该组织临时事件,以便最终存储在数据库中。
在极端情况下,您可以想象只有一个数据库读取和一个数据库 每个会话每个字符写一次。
答案 1 :(得分:0)
您考虑过NoSQL吗?
NoSQL数据库系统通常针对检索进行了高度优化 附加操作并且通常提供很少的功能 记录存储(例如键值存储)。 缩短的运行时间 与完整SQL系统相比的灵活性通过标记进行补偿 获得某些数据模型的可扩展性和性能。
简而言之, NoSQL数据库管理系统在工作时非常有用 当数据的性质不需要时,需要大量的数据 关系模型。数据可以是结构化的,但是在使用NoSQL时 真正重要的是存储和检索伟大的能力 数据量,而不是元素之间的关系。用法 示例可能是在一个或几个中存储数百万个键值对 关联数组或存储数百万条数据记录。这个 组织对统计或实时特别有用 分析不断增长的元素列表(如Twitter帖子或者 来自大量用户的Internet服务器日志。)
有更高级别的NoSQL解决方案,例如CrouchDB,它具有内置的复制支持。