今天学习了redis的列表类型
列表 是采用链表的数据结构实现的,他向插入10个元素的列表和插入10000个元素的列表 速度是一样的。列表一个很常用的应用场景就是比如读取最新文章,或者用户发表最新的微博内容,或者一篇文章的最新的评论数 。关键命令如下:
lpush
ltrim
lrange
lpush mylist content
ltrim 0,99
lrange 0,-1 lrange 两个参数 分别代表第一个元素和最后一个元素 。
redis的列表类型,可以用来做消息队列
使用一个进程 用lpush命名作为生产者
使用另外一个进程lpop命令作为消费者,当列表中没有元素时,一直是用lpop去轮询,会造成性能的消耗,可以用brpop或着blpop来做 。
redis的hash类型
基本命令
hset hmset hget hgetall hmget
可以存储一些对象比如用户信息,商品信息。
集合类型
添加元素到集合 sadd myset 1 2 3
返回集合的所有元素 smembers myset
检测元素是否存在 sismember myset
有序集合 ,多添加了一个分数的参数
zadd myset 30 yuanwei
zadd myset 20 lilei
zrange myset 0 -1 获取已经排好序的集合元素
zrevrange myset 0 -1 获取反向排序的集合
zrange hackers 0 -1 withscores 同时返回分数
zscore myset yuanwei 获得元素的分数
zrangebyscore myset 80 100 获得指定分数的元素
zcount myset 80 100 获得指定范围内分数的元素个数
zcard myset 获得集合中元素的个数
zrem myset yuanwei 删除元素