- 全量IO 全局遍历
2.路由、索引、映射
3.文件里都是小格子,4KB 硬件水平的吞吐。
数据:索引 =100:1
![](https://file.jishuzhan.net/article/1767450411662315522/bb3bb8930ed46c598a5f2d069d2e0edb.webp)
4.Mysql
qps:90000
tps:5000 事务 1个事务 18
tps*18=qps
![](https://file.jishuzhan.net/article/1767450411662315522/391ebb66acfe9ca6e8b939085b4958b2.webp)
1.安全
2.事务
3.持久化
4.淘汰
5.过期
定时:内存-mysql
一天一次。
redis不建议存储敏感数据,
1.key-value 命名
key:点表 变量名 命名规则
唯一性,
可读性,channel_dev_dataname_
灵活性,
时效性,设置过期时间,跟自己的业务场景,需要对key 设置合理的过期时间,可以在写入key时,追加过期时间,也可以在按照需要动态设置。
常见:
1.适用于关系型数据库
表名:主键名:主键值:列名
employee:id:1:info
- 根据业务创建
业务模块名:业务逻辑含义:其他:value
业务模块名:表示该key属于哪个功能块
业务逻辑含义段:
比如:员工信息 :employee:base.info:id1:hash
员工权限: employee:auth.permission:id1:set
2.Redis 全局命令
设置过期时间:
判断 key:aa 是否存在,不存在为0,存在为1
设置key=name 有效期时间为 10s
ttl name 2次,一次返回值为6,后一次返回值为0.
3.Redis 安全性
![](https://file.jishuzhan.net/article/1767450411662315522/44d1fbe105c98ea3743063e2e87467fe.webp)
修改配置文件:大概在443行 :1234就是新密码,然后重新启动。
![](https://file.jishuzhan.net/article/1767450411662315522/7146bd32f8a9dc3645ee65fdf895e01e.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/e173329e6b624e3a9e7f4ec386dff081.webp)
4.Redis 事务
![](https://file.jishuzhan.net/article/1767450411662315522/ce6c43aa040c2b7f1c85472eb63980ad.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/c0e482c8d1208b361864922a3ccf8ab0.webp)
中间出错,不会回滚。
![](https://file.jishuzhan.net/article/1767450411662315522/d1f5dd0f601d16e69485edb44a723520.webp)
5.Redis 持久化
重启服务
![](https://file.jishuzhan.net/article/1767450411662315522/1c2bb0bdccc67e95c45b10aecbc47778.webp)
定时 内存->硬盘
5.1.RDB
![](https://file.jishuzhan.net/article/1767450411662315522/3cbb69f933add35fcd93fdca22894f6e.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/ba5147e371eaa76f8f56b7d752a05e5b.webp)
5.2.AOF
![](https://file.jishuzhan.net/article/1767450411662315522/f3cad4c072209c294801de0cf2bb6480.webp)
硬盘:写操作
1s
30S
流程:
![](https://file.jishuzhan.net/article/1767450411662315522/5862487ac94b5ae1a64df053fac877a6.webp)
5.3 混合
![](https://file.jishuzhan.net/article/1767450411662315522/5bb93d7cd4ebb50303ca446228dfa6b0.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/7cbe2448a2f11f9a31d6bd97b7103c0e.webp)
RDB 全量
AOF 增量 AOF优先级高
6.Redis内存管理
![](https://file.jishuzhan.net/article/1767450411662315522/f208672f1bcb857712de7e58aa75ce3d.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/80c6d26be321808ac1f1cf4b5c79b3dd.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/67b5e37d76894aa1134cd8578810a7f9.webp)
![](https://file.jishuzhan.net/article/1767450411662315522/e6202316a6e5cb149e268275ef677501.webp)
LRU:淘汰最远的那个 :时间
LFU:淘汰次数最少的那个 :频次
Redis 内存淘汰机制 8种:
![](https://file.jishuzhan.net/article/1767450411662315522/d6d0c9bdbc765af4eeef82e49268d666.webp)
设置过期时间:
所有key:
报错:
最后一个:
7.key
![](https://file.jishuzhan.net/article/1767450411662315522/ce8a28a1aa1eb1a93c31ce68b00bec1e.webp)
20%删除。
https://redis.io/docs/clients/ 查看哪些语言可以编程操作 redis