- 装备 tags:
- kvstore
- redis published: true comments: true
Redis是一个高性能Key-Value store
Installation
下载解压,make之后就可以直接启动./redis-server 默认读取当前目录下的redis.conf作为配置,亦可参数指定。默认监听6379端口。Features
支持多种数据结构
相较memcached,redis支持多种数据结构,包括针对每种数据结构,redis都提供比较完整的操作支持。
高性能
据Wiki上说可以达到110,000 SETs/second, 81,000 GETs/second,数据根据一定的策略存在内存和磁盘上(支持持久化)。从1.1开始支持append-only持久化方式,数据被加到文件中,并进行异步的维护,保证文件的大小。从2.0(即1.3)开始支持virtual memory,当内存占用超过配置文件中vm-max-memory时,数据被写入virtual memory。Replication
redis支持主从复制,从而提供多台实例进行读操作,可以在slave的配置文件里配置master的地址。Protocol
redis目前只有基于TCP的文本协议,与memcache类似,有一些改进。客户端通常发送 命令 参数... 值字节数\r\n 值\r\n
服务端的返回,根据第一个字节,可以判断:
- - 错误信息
- + 普通文本信息
- $ 变长字节数,$6表示CRLF之后有6个字节的字符
- : 返回一个整数
- * 返回组数,即*6表示CRLF之后将返回6组变长字符
其他
项目地址 http://code.google.com/p/redis/ http://github.com/antirez/redis/ 开发者twitter http://twitter.com/antirez http://twitter.com/pnoordhuisRedis功能简单精悍,很符合Unix哲学,核心redis.c只有一万多行,实在是个让人爱不释手的东西。如果可能,争取把他用到生产环境来取代现在的memcached。
The post is brought to you by lekhonee v0.7