Redis : REmote DIctionary Server(远程字典服务器) Redis学习:Http://www.redis.cn/
Redis 与其他 key - value 缓存产品有以下三个特点
1.Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
2.Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储
3.Redis支持数据的备份,即master-slave模式的数据备份
redis常见数据类型操作命令 redis常见数据类型操作命令: Http://redisdoc.com/
redis数据类型是k-v键值对
redis的key
keys * : 列出所有的key
ttl key : 查看还有多少秒过期,-1表示永不过期,-2表示已过期(ttl:time to live)
redis的value value有五大数据类型
1. String(字符串): 单值单value
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M
setex:设置带过期时间的key,动态设置。 setex 键 秒值 真实值
setnx:只有在 key 不存在时设置 key 的值。
msetnx:同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在,否则都存不进去。
2. Hash(哈希,类似java里的Map):KV模式不变,但V是一个键值对
Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
类似Java里面的Map<String,Object>
3. List(列表):单值多value
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
它的底层实际是个链表LinkedList
4. Set(集合):单值多value
Redis的Set是string类型的无序集合。它是通过HashTable实现实现的
5. Zset(sorted set:有序集合) :
在set基础上,加一个score值。之是SADD key v1 v2 v3,现在ZADD是k1 score1 v1 score2 v2 score3 v3
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以