redis

来源:互联网 发布:android 聚合数据 编辑:程序博客网 时间:2024/05/21 14:09
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,并且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcacheed一样,为了保证效率,数据都是缓存到内存中,区别是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
相比memcached的优势:
 --value类型更丰富
 --数据操作方法更多
 --可将内存数据持久化到硬盘

Redis的应用场景
目前全球最大的Redis用户腾讯微博、新浪微博,在新浪有200多台物理机,400多个端口运行着Redis,有+5G的数据在redis上来为微博用户提供服务。另外Redis常用的功能还有:
 (1)、取最新N个数据的操作
 (2)、排行榜应用,取TOP N操作
 (3)、需要精准设定过期时间的应用
 (4)、计数器应用
 (5)、Uniq操作,获取某段时间所有数据排重值
 (6)、实时系统,反垃圾系统
 (7)、Pub/Sub构建实时消息系统
 (8)、构建队列系统
 (9)、缓存