一给 发表于 2025-1-6 05:52:49

redis根本的全局下令

https://i-blog.csdnimg.cn/direct/f2816a44fddc4163986f53a9de04a02a.png
 博主主页: 码农派大星.
    数据结构专栏:Java数据结构
 数据库专栏:数据库
JavaEE专栏:JavaEE
软件测试专栏:软件测试
关注博主带你了解更多知识
https://img-blog.csdnimg.cn/direct/73aac261e3644d2397dd71aa1927bc28.jpeg
 
1. Redis下令⾏客⼾端

通过redis-cli客户端和redis服务端交互,还会涉及很多的redis下令
https://i-blog.csdnimg.cn/direct/a0eb8e3ff68345a79b043a875214dc22.png
我们这里可以直接使用redis-cli毗连redis服务器 
交互过程:
https://i-blog.csdnimg.cn/direct/5c4c5e3803384de9ae9d0558a838d73e.png
2. Redis常⻅数据类型 

 2.1 SET和GET 下令

SET 和 GET 下令通常用于操作字符串类型的数据


[*]SET 下令用于设置给定键的值。如果键已经存在,SET 下令会更新这个键的值。
[*]GET 下令用于获取与给定键相干联的值.
 https://i-blog.csdnimg.cn/direct/539a52f9bd5d45ce85e2449abdcf1bce.png
2.2 根本全局下令

Redis 有5种数据结构,但它们都是键值对种的值,对于键来说有⼀些通⽤的下令
1. KEYS

KEYS下令用于查找全部匹配指定模式的键
查找全部键:KEYS * (不发起轻易使用)
语法:
KEYS pattern 返回全部满⾜样式(pattern)的key,⽀持如下统配样式:
https://i-blog.csdnimg.cn/direct/87d3c1870b3e43ce8e92ddebb79e679a.png
keys下令的时间复杂度:O(N) 
在生产环境上,一般禁止使用keys,尤其是keys * , 由于生产环境上的key很多,而redis是一个单线程的服务器,执行keys * 时间会非常长,会使redis服务器被阻塞,无法给其他客户端提供服务 
redis 经常会用于做缓存.挡在mysql前面,万一redis 被一个 keys*阻塞住了,此时其他的査询 redis 操作就超时了,此时这些哀求就会直接查数据库,忽然一大波哀求过来了,mysql 可能措手不及,就容易挂了
https://i-blog.csdnimg.cn/direct/d6478a09490e441e9daf7325a86043e9.png 
2. EXISTS

判定某个key是否存在

EXISTS key 时间复杂度:O(1)
返回值:key存在的个数
3. DEL

删除指定的key
DEL key 时间复杂度:O(1)
返回值:删撤除的key的个数
4. EXPIRE

为指定的key添加秒级的过期时间
EXPIRE key seconds 时间复杂度:O(1)
返回值:1表⽰设置乐成。0表⽰设置失败
5. TTL

获取指定key的过期时间,秒级
TTL key 时间复杂度:O(1)
返回值:剩余过期时间。-1表⽰没有关联过期时间,-2表⽰key不存在
https://i-blog.csdnimg.cn/direct/f6668fa0278a45158f3379e2774e81d1.png
redis的key的过期策略是怎么实现的?

redis的整体策略是:
1.惰性删除: 假设一个key已经到过期时间了,但是暂时还没删它,key还存在,紧接着,背面有一次访问,正好用到了这个key,于是这次访问就会让redis服务器触发删除key的操作,同时再返回一个nil
2.定期删除: 每次抽取一部分,进行过期验证时间,保证这个抽取检查的过程,足够快
redis中并没有采取定时器的方式来实现过期key删除
6. TYPE

返回key对应的数据类型
TYPE key 时间复杂度:O(1)
返回值: none , string , list , set , zset ,hash and stream
https://i-blog.csdnimg.cn/direct/6057a8dc3ebd4668945f5eb1d2d692db.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: redis根本的全局下令