redis
redis是key-value内存数据库,线程安全,高并发,由于是内存数据库,存储能力有限,不宜存储过长的key,适用于高并发访问,公共数据的存储
数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
1)字符型
redis 127.0.0.1:6379> SET runoobkey redis OK redis 127.0.0.1:6379> GET runoobkey "redis
支持查询是否存在某key,incrby值自增,expire过期时间,setnx不存在设置某值..
2)哈希型
hset key fields value
hget
同样支持是否存在key设置某值 过时等
3)列表 用来实现排队
lpush 放数据在列表头部
lpop 从头部取
rpop 从尾部取
rpush 从尾部放
放入如果存在某key,加个x
4)集合
sadd key
scard key 获取数目
SMEMBERS 查看key下set
spop 移除随机值
SREM key member1 [member2] 移除一个或多个成员
得到两个set的交集,差集等
5)有序set
Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
ZADD key score1 member1 [score2 member2]
ZINCRBY key increment member
有序集合中对指定成员的分数加上增量 increment
ZRANGE key start stop [WITHSCORES]
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]
通过分数返回有序集合指定区间内的成员
ZREM key member [member ...]
移除有序集合中的一个或多个成员