Redis简介
Redis是REmote DIctionary Server(远程字典服务器)缩写。
以字典结构存储数据,并允许其他应用通过TCP协议读写字典中的内容。
支持的键值数据类型有:字符串类型string、散列类型hash、列表类型list、集合类型set、有序集合类型zset。
内存存储与持久化
Redis可以为每个键设置生存时间(Time To Live,TTL),生存时间到期后会被自动删除。可以作为缓存系统使用。
在性能上Redis是单线程模式,而Memcached支持多线程,所以在多核服务器上后者性能更高一些。
Redis是使用C语言开发的。
Redis多数据库
一个Redis实例提供了多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。
每个字典类似于一个独立的数据库。每个字典对外以一个从0开始的递增数字命名,默认支持16个,不支持自定义数据库名字。
一般不同应用的数据应该使用不同的Redis实例存储。
Redis不区分命令大小写
Redis提供的所有命令都是原子操作(atomic operation)。
Redis对于键的命名并没有强制要求,较好的实践用“对象类型:对象ID:对象属性”来命名一个键,如使用键 user:1:friends来存储ID为1的用户的好友列表。
Redis各个数据类型都不支持数据类型的嵌套。
当前Redis的应用已经非常广泛,国内像新浪、淘宝,国外像 Flickr、Github等均在使用Redis的缓存服务。