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

作者: 抓不住的风 | 来源:发表于2014-11-03 20:38 被阅读855次

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

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

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

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

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

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

async.waterfall ([

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

          function(cb){.....}

],function(err,info){

});

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

相关文章

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

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

  • 你需要知道的缓存击穿/穿透/雪崩

    缓存击穿/穿透/雪崩 Intro 使用缓存需要了解几个缓存问题,缓存击穿、缓存穿透以及缓存雪崩,需要了解它们产生的...

  • 你需要知道的缓存击穿/穿透/雪崩

    缓存击穿/穿透/雪崩 Intro 使用缓存需要了解几个缓存问题,缓存击穿、缓存穿透以及缓存雪崩,需要了解它们产生的...

  • Android源码阅读之LruCache

    LruCache实现原理 介绍 LRU是最近最少使用(Least Recently Used)缓存算法。它需要跟踪...

  • 缓存设计

    目录 缓存设计需要考虑的地方 项目代码编写 mybaits缓存设计原理 guava缓存设计原理 本地缓存设计需要考...

  • LruCache原理

    LruCache可以翻译为最近最少使用缓存,它用强引用保存需要缓存的对象,它内部维护一个队列(实际上是Linked...

  • PHP文件锁

    有时候需要避免代码并发执行. 缓存击穿问题. 比如一件商品编号1001.在缓存中它的key为goods:1001,...

  • 无话

    文字就像翅膀 不是什么时候都需要它

  • http 缓存

    概述 http 缓存分为强缓存和协商缓存。命中强缓存不需要客户端就不需要向服务器发送请求,直接使用本地缓存(Cac...

  • 如何优雅的设计和使用缓存?

    1.确认是否需要缓存 在使用缓存之前,需要确认你的项目是否真的需要缓存。使用缓存会引入的一定的技术复杂度,后文也将...

网友评论

    本文标题:缓存--什么时候需要它?

    本文链接:https://www.haomeiwen.com/subject/hlfbtttx.html