redis命令
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了redis命令,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1908字,纯文字阅读大概需要3分钟。
内容图文
redis 都有哪些数据类型?分别在哪些场景下使用比较合适?
redis 主要有以下几种数据类型:
string
hash
list
set
sorted set
string
这是最简单的类型,就是普通的 set 和 get,做简单的 KV 缓存。
set name ccx
get name
hash
这个是类似 map 的一种结构,这个一般就是可以将结构化的数据,比如一个对象(前提是这个对象没嵌套其他的对象)给缓存在 redis 里,然后每次读写缓存的时候,可以就操作 hash 里的某个字段。
hset person name bingo
hset person age 20
hset person id 1
hget person name
person = {
"name": "bingo",
"age": 20,
"id": 1
}
list
list 是有序列表,这个可以玩儿出很多花样。
比如可以通过 list 存储一些列表型的数据结构,类似粉丝列表、文章的评论列表之类的东西。
比如可以通过 lrange 命令,读取某个闭区间内的元素,可以基于 list 实现分页查询,这个是很棒的一个功能,基于 redis 实现简单的高性能分页,可以做类似微博那种下拉不断分页的东西,性能高,就一页一页走。
0开始位置,-1结束位置,结束位置为-1时,表示列表的最后一个位置,即查看所有。**
lrange mylist 0 -1
比如可以搞个简单的消息队列,从 list 头怼进去,从 list 尾巴那里弄出来。
lpush mylist 1 将一个或多个值推入列表的右端
lpush mylist 2
lpush mylist 3 4 5
rpop mylist
rpush 将一个或多个值推入列表的右端
rpop 移除并返回列表最右端的元素
lpop 移除并返回列表最左端的元素
Set
set 是无序集合,自动去重。
直接基于 set 将系统里需要去重的数据扔进去,自动就给去重了,如果你需要对一些数据进行快速的全局去重,你当然也可以基于 jvm 内存里的 HashSet 进行去重,但是如果你的某个系统部署在多台机器上呢?得基于 redis 进行全局的 set 去重。
可以基于 set 玩儿交集、并集、差集的操作,比如交集吧,可以把两个人的粉丝列表整一个交集,看看俩人的共同好友是谁?对吧。
把两个大 V 的粉丝都放在两个 set 中,对两个 set 做交集。
sorted set
sorted set 是排序的 set,去重但可以排序,写进去的时候给一个分数,自动根据分数排序。
zadd board 85 ccx
zadd board 72 rw
zadd board 96 ccx-rw
zadd board 63 rw-ccx
获取排名前三的用户(默认是升序,所以需要 rev 改为降序)
zrevrange board 0 3
获取某用户的排名
zrank board rw
内容总结
以上是互联网集市为您收集整理的redis命令全部内容,希望文章能够帮你解决redis命令所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。