工作中关于redis应用的总结

标签: 工作 redis 应用 | 发表时间:2014-11-21 21:04 | 作者:MJC410621
出处:http://www.iteye.com
  工作中用到的缓存技术有memcache,redis,常用的缓存技术是redis,它和memcache一样,数据都是缓存在内存中的。区别是redis会周期性把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且支持主从同步。提供了五种数据类型:String,hash,list,set及sorted set。
  遇到应用场景如下:
  1,计数器。比如购买某商品后,购买人数增加1,调用hincrBy(key,field,value)方法,比如key可以是商品的购买数量"user_count_key",field可以是商品的编码"product_code",value就是1。如果key不存在会创建一个key持有一个hash,如果key存在,field不存在就会设置field的值为0。比如商品的实际卖出金额也可以放在redis缓存中用于判断是否超过最大额等等,由于redis的原子性保证了并发计数的可靠性。它支持64位有符号的整数范围。所以调用该方法即可以增加也可以减少。
  2,存储用户的信息:比如用户输入邀请码后验证通过后调用hset(key,field,value)存起来,后续的下单,支付时再次取出来调用hget(key,field,value)验证,支付成功后调用hdel删除使之失效。key可以用用户的uid表示。field可以用product_code表示,value就是用户输入验证通过的邀请码。
  3,缓存产品的详情信息(编辑后不经常变)提高性能,根据productCode查询某产品的对象先调用get(key)方法获得某code的商品,如果不为null调用set(key,objcetValue),否则去数据库查询重新set(key)。如果后台编辑更改商品详情要求重新前段马上展现更新后的商品信息,这时需要提清除缓存的方法del(key)。
  4,定时清除某些商品对象:如expire(key, 60*5);//缓存5分钟后失效。
  5,取积分前100名的用户:列出积分前100名用户,每次获得用户的新积分可以调用:zadd(String key, double score, String value),调用zrevrange(String key, int start, int end)就可以得到
  暂时想到这些应用,在后续的工作中还会遇到redis的其它一些应用,也会随时补充的。


已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [工作 redis 应用] 推荐:

工作中关于redis应用的总结

- - 开源软件 - ITeye博客
  工作中用到的缓存技术有memcache,redis,常用的缓存技术是redis,它和memcache一样,数据都是缓存在内存中的. 区别是redis会周期性把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且支持主从同步. 提供了五种数据类型:String,hash,list,set及sorted set.

Redis应用场景

- - CSDN博客架构设计推荐文章
Redis最为常用的数据类型主要有以下:. 在具体描述这几种数据类型之前,我们先通过一张图了解下Redis内部内存管理中是如何描述这些不同数据类型的:.          首先Redis内部使用一个redisObject对象来表示所有的key和value,redisObject最主要的信息如上图所示:.

redis应用场景

- - 数据库 - ITeye博客
Redis在很多方面与其他数据库解决方案不同:它使用内存提供主存储支持,而仅使用硬盘做持久性的存储;它的数据模型非常独特,用的是单线程. 另一个大区别在于,你可以在开发环境中使用Redis的功能,但却不需要转到Redis. 转向Redis当然也是可取的,许多开发者从一开始就把Redis作为首选数据库;但设想如果你的开发环境已经搭建好, 应用已经在上面运行了,那么更换数据库框架显然不那么容易.

[转]Redis作者谈Redis应用场景

- notsobad - heiyeluren的blog(黑夜路人的开源世界)
文章来源:http://blog.nosqlfan.com/html/2235.html. 毫无疑问,Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象构建不同的冰箱.

Redis应用场景(转)

- - 开源软件 - ITeye博客
转自: http://blog.csdn.net/hguisu/article/details/8836819#t11.  MySql+Memcached架构的问题.   实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:.

Redis 在新浪微博中的应用

- - 大CC
Redis 在新浪微博中的应用. 支持strings, hashes, lists, sets, sorted sets. string是很好的存储方式,用来做计数存储. sets用于建立索引库非常棒;. K-V 存储 vs K-V 缓存. 新浪微博目前使用的98%都是持久化的应用,2%的是缓存,用到了600+服务器.

Mongodb与Redis应用指标对比

- - CSDN博客数据库推荐文章
    MongoDB和Redis都是NoSQL,采用结构型数据存储. 二者在使用场景中,存在一定的区别,这也主要由于. 二者在内存映射的处理过程,持久化的处理方法不同. MongoDB建议集群部署,更多的考虑到集群方案,Redis. 更偏重于进程顺序写入,虽然支持集群,也仅限于主-从模式. 丰富的数据表达、索引;最类似于关系数据库,支持丰富的查询语言.

Redis在新浪微博中的应用

- - 丕子
感觉国内对Redis玩的最转的就是新浪微博了,最近也在研究和使用Redis,准备把某些数据放到redis中. 看了几篇新浪微博的文章,挺受启发的,特别是对Redis集群扩容、内存容量配置等经验的介绍. Redis计数在新浪微博的应用. 微博关系服务与Redis的故事. Redis 在新浪微博中的应用.

Redis应用场景及产品定位

- - 互联网 - ITeye博客
关键字:Redis应用场景及产品定位. 传统MySQL+ Memcached架构遇到的问题. 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:.     MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间.

基于twemproxy的redis分布式应用

- - 数据库 - ITeye博客
根据以往的测试结论,单个redis的实例的内存总量最好控制在8G以内(最大不能超过20G),而实际上应用对redis的内存的需求可能会远远大于8G,因此需要一个保持redis server性能不下降,但可以有效扩充redis server的容量的方案. twemproxy是一个恰当的选择. twemproxy,也叫nutcraker.