本文介绍: String是最常用的数据格式,普通的kay-value都归结为此类, value值不仅可以string可以数字使用场景:通过用户访问次数为依据封锁ip,可以将用户访问次数已string类型记录redis中,并通过INCRBY操作,每次访问进行递增。

数据类型

1.1 字符串

String是最常用的数据格式,普通的kay-value都归结为此类, value值不仅可以是string,可以是数字。
使用场景:通过用户访问次数为依据封锁ip,可以将用户访问次数已string类型记录redis中,并通过
INCRBY操作,每次访问进行递增。
常用命令
get, set, incr, decr, mget

示例

set

set name zhangsan

get

get name

#查看redis所有key
keys *

#查看redis中以name开发key
keys name*

#设置个数
set num 1

#自增
incr num

#递减
decr num

1.2 hash

使用场景: 例如用户包含idnameaddr属性,当需要使用redis存放用户信息时,可以使用hash。(和java中的Map很像)
常用命令hgethsethgetall等

1.3 List

应用场景:最新消息排行; 消息队列。利用Listspush操作,将任务存储list中,然后工作线程再用pop操作任务取出进行执行

常用命令
lpush,rpush,lpop,rpop,lrange,BLPOP(阻塞版)等

1.4 Set

常用场景: setlist比较类似,特殊之处是set可以自动排重,同时set还提供了某个成员是否存在于一个set内的接口,这个在list没有
常用命令
sadd,srem,spop,sdiff ,smembers,sunion

1.5 sorted set

使用场景:zset的使用场景与set类似,区别是set不是有序的,而zset可以通过用户额外提供的一个优先级score即分值)参数来为成员排序插入自动排序。例如:将所有评论按发表时间score存储,可以方便获取最新发表的评论;全班同学成绩的SortedSetsvalue可以是同学的学号,而score就可以是其考试得分,这样数据插入集合的,就已经进行了天然的排序
另外还可以用Sorted Sets来做带权重的队列,比如普通消息score为1,重要消息score为2,然后工作线程可以选择score的倒序来获取工作任务。让重要的任务优先执行

常用命令
zadd,zrange,zrem,zcard,zcount

原文地址:https://blog.csdn.net/2301_76964036/article/details/134696304

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_7643.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注