1.redis入门概述
redis历史大版本
redis是什么
是一种基于内存的key-value键值对
redis用来做什么
redis应用场景
redis优势
redis去哪下
redis7新特性浅谈
缓存数据和客户端连接内存占用平衡,关于maxmemory的配置做了优化
异步读写
redis密码,权限管理,建议设置密码
redis7新特性总结
2.redis安装与配置
1.前置准备工作,linux查看系统多少位getconf LONG_BIT
2.官网推荐使用linux系统安装,性能更佳
3.windows下安装redis
4.linux下安装redis
必须有gcc编译环境
gcc大于这个版本即可 gcc -v
如果没有gcc,yum安装即可
查看redis版本(需要6.0.8版本以上)
centos7环境准备,开始安装redis7
1.解压redis安装包,cd进解压后的redis目录2.make & make install
3.安装成功后显示如下
4.进入redis默认安装路径 /usr/local/bin
5.redis安装后查看
6.redis.conf 默认在/opt/redis解压目录
修改之前记得备份,改之后记得重启
7.
3.redis十大数据类型
String
List
HASH
Value是键值对
SET
Zset
GEO
HyperLogLog基数统计
redis位图bitmap
redis位域
redis流Stream
redis官网
redis常见命令
1. keys *
2. type
3.del
4.unlink key
不会阻塞
REDIS命令不区分大小写,key区分大小写
4.Redis的十大数据类型详细讲解
String
set key value [nx|xx] [GET] [ex seconds | PX millisecond ...
set k1 v1 get先查老值,再set新值
如何获取指定key过期的unix时间
keepttl
修改k1的值,会覆盖之前值的过期时间变成永不过期
可以使用keepttl参数,保持之前的过期时间
mset mget msetnx 批量操作
GETRANGE SETRANGE 精准截取和精准替换,类subString
数值增减 INCR key| DECR key
字符串长度和内容追加 STRLEN key | APPEND key value
分布式锁
getset = set k1 v1 get
合二为一 set k1 v1 + expire k1 10 = setex k1 10 v1
List
底层是双端列表的数据结构
LPUSH/RPUSH/LRANGE
linsert key before
微信公众号关注文章
HASH
判断key里面某个filed是否存在
案例
SET
SADD | SMEMBERS | SISMEMBER
SREM 删除元素|SCARD 获取元素中集合个数
SRANDMEMBERS 随机选3个
SPOP弹出元素
SMOVE 迁移元素
SDIFF set1 set2 属于A不属于B
基数:去重的数量
案例
微信抽奖小程序
朋友圈点赞
QQ内推可能认识的人
ZSET 有序集合
ZADD 添加元素
ZRANGE 遍历元素
ZREVRANGE 倒序排列
ZRANGEBYSCORE 根据score范围取值
(不包含
不加的话默认表示>= 60 & <= 90
limit 返回限制
ZSCORE 查询分数
ZCARD 计数
ZREM key 删除某score下对应的value值
ZCOUNT 获取指定范围分数的元素个数
ZMPOP
ZRANK | ZREVRANK 获取排位正/反
应用场景-根据商品销售对商品进行排序显示
bitmap
是什么
能干嘛
基本命令
SETBIT
GETBIT
STRLEN
0-7一组
BITCOUNT-1有多少个
BITOP 位运算 都1才1
举例-按天统计
一年打卡
HyperlogLog
看需求
是什么
PFADD | PFCOUNT | PFMERGE
不存储元素本身