游戏的数据存储

使用mysql:游戏的业务需求多变,意味着数据的字段增删很频繁,如果用mysql的扁平表去存储每个字段会非常麻烦,更倾向对象数据库那样直接存储对象,确切的说是json对象。游戏里最复杂的数据就是角色数据role,以role为例:role是分布式的,数据分散在不同的业务服务器上。按服务器类别建字段,类似dataChunk1,dataChunk2,dataChunk3...把各部分数据分别以json对象的格式存储到对应的字段里。

使用redis:redis用作缓存,业务直接跟缓存打交道,缓存再把数据的改变写到mysql里。

中层框架:业务层不用关心游戏使用的是哪种数据库,甚至项目中途换数据库了,业务层的代码也无需任何改变,这需要中层的支持。中层提供存储相关的接口,业务层调用并获取结果,接口的实现则封装在中层内部。

发布了58 篇原创文章 · 获赞 29 · 访问量 14万+

猜你喜欢

转载自blog.csdn.net/taoqilin/article/details/100526319
今日推荐