key 命名规范
方便管理,不要过长,冒号分隔不要有特殊字符
冒号表示创建一个文件夹目录 register -> code -> 19188772211(文件) -> (存储的值)12345
set register:code:19188772211 12345
set login:code:19188772211 12345
通用命令
exists 判断key是否存在
exists login:code:19188772211 存在返回 1 不存在返回 0
del 删除key
del login:code:19188772211 表示删除
type 判断key类型
type login:code:19188772211 表示查看key是什么类型
ttl 查看key存活时间
ttl login:code:19188772211 表示查看key的存活时间
String类型介绍、核心命令
无需的 按照插入的顺序
应用场景:验证码、计数器、订单重复提交、用户登录信息、商品详情
核心命令:set/get/increment/decrement/del
# 表示文件名是 name 值是 xiao
set name xiao
# 多个值设置
mset name xiao age 20
# 取值 输入文件名
get name
# 多个取值 输入多个文件名
mget name age
# 增加 1 操作
incr age
# 增加指定的数值
incrby age 10
# 设置存活时间 设置key为name 值是xiao 10秒后消失
set name xiao ex 10
# 设置一个值 如果存在就不做操作 不存在就创建
setnx age 40
# 设置key的值并返回他的旧值
getset hobby eat
List类型介绍、核心命令
有序集 他会为我们自动的排序
应用场景:简单队列、最新评论列表、非实时排行榜、定时销售榜单
核心命令
# 列表中推送 数据 类似数组集合 push
lpush course:rank:daily html css js # lpush 从前推送 rpush 尾部推送
# 移除最后一个元素并返回该元素
rpop course:rank:daily
# 获取列表长度
llen course:rank:daily
# 下标 获取下标数的这个内容
lindex course:rank:daily 2 # 表示获取的是 下标为 2 列表元素
# 获取下标范围内的 数据
lrange course:rank:daily 1 2 # 获取下标 1~2的数据 0~-1就是查找全部数据
SortedSet类型、核心命令
应用场景:实时排行榜、朋友圈文章点赞统计、优先级任务、队列
# 像有序列表推送一个或多个
zadd course:rank:laowang
# 获取集合数
zcard course:rank:laowang
# 获取区间的集合数 获取 50到70分的个数
zcount course:rank:laowang 50 70
# 有序集合指定成员上 加一 第一个是值加1 第二个是键
zincrby course:rank:laowang 1 yingyu