游戏编程研究院pomelo 游戏开发

缓存--什么时候需要它?

2014-11-03  本文已影响855人  抓不住的风

今天在对一个数据量比较小的数据存放问题上,苦恼了有十几分钟,然后就问了一下前辈。分享一下

存放数据到缓存中的主要依据是,看这些数据是否需要频繁的查询数据库,也就是这些数据是否是频繁的变动的。

如果是频繁的变动的,最好放在缓存中。在游戏中,一个人的操作保存下来是小数据,但是很多人的数据放在一块,那变动就很大了。

还有一点就是缓存容量的问题,这个我也问了一下,缓存容量应该是有限的,所以需要通过限制访问,比如说一个区爆满,就不让进了,应该就是数据量太大,对服务器造成了负担。

更新数据的时候,优先更新静态的数据,数据库中的数据先更新,才可以更新缓存中的数据。如果数据库更新失败,就会报错,这时候缓存中的数据就不会更新了。如果先更新缓存中的数据,数据库中的数据如果更新失败了,会造成数据混乱的情况,显示在客户端的不是真实的数据。用户下次进入游戏就会变化。

处理逻辑的时候,最常用的就是

async.waterfall ([

          function(cb){.....},

          function(cb){.....}

],function(err,info){

});

所有的逻辑放在这里面清晰可见,而且逻辑思路非常的清晰。这是自己的一个体会。

上一篇 下一篇

猜你喜欢

热点阅读