redis系列之redis是什么
2014-04-29 19:20
316 查看
一、简介
REmote DIctionary Server(Redis),redis是一个基于内存的单机key/value系统,类似memcached,但支持value为多种形式,包括:字符串(string)、链表(list)、集合(set)、有序集合(sorted set)和hash table二、特点
1 优点
与memcache和MySQL等类似产品比较,Redis有以下几个优点:(1) 非常丰富的数据结构,且这些数据结构的常见操作均是原子性的;
(2) 高速读写。Memcached提供了CAS命令,可以保证多个并发访问操作同一份数据的一致性问题。 Redis没有提供CAS命令,不过Redis提供了事务的功能,可以保证一串命令的原子性,中间不会被任何操作打断。MYSQL使用了锁,而memcache未使用锁,进而效率极高。总之,Redis用自己实现的事件分离器,代码量很短,没有CAS,没有lock,因而效率非常高。关于memcache与redis的比较,可参考这篇文章:《Redis与Memcached的比较》[1]
2 缺点
(1) 持久化。 Redis直接将数据存储到内存中,可通过两种方式持久化:定时快照(snapshot)和基于语句的追加(Append Only File,aof)。Snapshot的方法是指每隔一段时间将整个数据库的数据写到磁盘上,很明显,每次均是写全部数据,代价非常高;而aof方法只追踪变化的数据,这类似于mysql的binlog方法,但追加log可能过大,同时所有操作均要重新执行一遍,恢复速度慢。(2) 耗内存。尽管Redis对一些数据结构采用了压缩算法存储,但占用内存量还是过高。
[1] Redis与Memcached的比较http://tech.it168.com/a2011/0818/1234/000001234403_1.shtml
相关文章推荐
- Redis系列(一)是什么?
- redis-系列之一JedisPool(非切片链接池)和ShardedJedisPool(切片链接池)有什么区别
- Redis系列-冷知识
- redis学习系列--2.redis-string类型
- Redis系列(一)--安装、helloworld以及读懂配置文件
- redis学习系列--5.redis-sets 类型
- Redis系列~集合(Set)(九)
- redis系列-事件
- Redis系列学习(四)之jedis工具类
- redis学习系列之——介绍篇
- 漫谈程序员系列:程序员到底是什么角色
- 敏捷开发一千零一问系列之九:总体架构什么时机进行?(上)
- 淘淘商城系列——redis-desktop-manager的使用
- 具有邮件功能的用户和联系人有什么区别?-Exchange2003系列之八
- 【SpringBoot系列2】SpringBoot整合Redis
- (Ryan的Redis系列博客)2.Redis简介
- 什么是redis数据库
- PHP相关系列 - Redis导数据的PHP脚本
- (Ryan的Redis系列博客)7.Redis键的生命周期
- Redis系列四(keepalived+lvs搭建负载均衡)