个人建设任务网站,wordpress alt 空,主动营销的方式有哪些,网站主页面布局怎么做那篝火在银河尽头~ Redis-cli命令启动 现如今#xff0c;我们已经启动了Redis服务#xff0c;下⾯将介绍如何使⽤redis-cli连接、操作Redis服务。客户端与服务端交互的方式有两种:
● 第⼀种是交互式⽅式: 后续所有的操作都是通过交互式的⽅式实现#xff0c;…
那篝火在银河尽头~ Redis-cli命令启动 现如今我们已经启动了Redis服务下⾯将介绍如何使⽤redis-cli连接、操作Redis服务。客户端与服务端交互的方式有两种:
● 第⼀种是交互式⽅式: 后续所有的操作都是通过交互式的⽅式实现不需要再执⾏redis-cli了。
redis-cli-h{host}-p{port} 进入redis后我们可以敲下使用redis的一个命令: ● 第⼆种是命令⽅式: 就可以直接得到命令的返回结果.
reids-cli -h {host} -p {port} {command} 这里有两点需要注意由于我们连接的Redis服务位于127.0.0.1端⼝也使⽤的是默认的6379端⼝。所以很多时候所以可以省略-h{host}-p{port}。 Redis全局命令:
如何理解全局命令? (1) set与get redis中最核心的两个命令就是: set 和 get.set是用来把 key 和 value存储进去而get是用来通过 key 获取 ”value. set命令使用: set后面可以携带很多参数但是开始学习阶段我们就采取它最简单的用法。 对于上述的key value如果你要表示字符串可以不用加 即便加上redis也不会报错。 get命令使用: 你说你现在设置了两个key就设置了嘛你总得给我看看你设置的key是什么吧 nil vs null: null和nil都可以表示没有或者在价值上为0的概念其中我们使用 null大多数用在数学、编程、商业等等另一方面在体育竞技或游戏方面使用 nil。 (2) Keys 参数效果?匹配任意一个字符* 匹配0个或多个任意字符[abcde]只能匹配到这个选型的任意一个[^e]匹配字符但 不包括e[a-b]匹配a~b这个范围范围都是闭区间 设置部分keys。 keys *: keys命令的时间复杂度是O(n),这很好理解就是遍历redis服务器是上存储的所有key。keys *其效果就是遍历访问 redis上的所有设置过的key在生产环境中一般会禁止使用keys *命令 因为执行 keys *命令所花费的时间非常长而Redis是一个单线程进程此时就会导致redis服务器被阻塞住了无法给其他客户端提供服务 (3) EXISTS redis中支持很多数据结构指的是value可以是一些复杂的数据结构。相对于redis自身的键值对是通过哈希表的方式来组织的。 为什么redis很多命令可以进行多参数传递 这两次写法有什么区别 我们需要了解redis是一个网络服务它的服务端和客户端的交流方式一定是以这样的形式: 如果输入多条命令也就是需要多次网络传输网络通信相反如果将这些命令打包成一条命令那么仅仅需要进行一次网络传输即可大大减少了网络IO次数提高数据处理的能力 (4) DEL (5) (P)EXPIRE\(P)TTL 返回值1表⽰设置成功。0表⽰设置失败。 这里我们可以联想我们手机收到的验证码什么几分钟内有效。 返回值剩余过期时间。-1表⽰没有关联过期时间-2表⽰key不存在。 对计算机而言秒实在是很慢所以你也会看到p开头的诸如 “pexpire\pttl”它们的时间是以毫秒为单位。 (6) type 当然这些数据结构会在后面的篇幅中讲解。我们现在只需要观察结果不用在意敲击的命令是什么意思。 我们通过type可以很快地知道每个redis中存在的key存储的value是什么类型。 Redis中的过期策略 我们可以使用Expire命令设置key的到期时间。可是一个redis中一定不止一个key设置了过期时间这些key一定需要什么管理其来到一定的时间对这些key进行释放。redis咋可能知道哪些key已经过期需要被删除呢哪些可以还没有过期呢 可是Redis是一个单线程进程如果是遍历所有的key这样显然是行不通的效率太低了那么redis采取的过期策略是什么呢 虽然上述两种策略相结合但是仍然会残存很多的过期Key没有得到及时的删除。因此redis还提供了一系列内存淘汰的策略解决这个问题。 有兴趣可以看看这篇讲解redis的内存淘汰策略的文章:
https://baijiahao.baidu.com/s?id1729630215002937706wfrspiderforpc redis并没有选择使用定时器的方式来实现对key的过期删除如果存在多个key需要被过期删除那么一个定时器可以高效、节省cpu资源的前提下完成对过期key的清理。 所以借着这个机会我们来看看定时器思想的两种实现方法。
定时器思想:
1) 基于优先级队列实现的定时器: 2) 基于时间轮实现的定时器 再次注意redis中并没有采取这两种方案的任何一种来解决过期key的清理但这两种方案都是高效的定时器实现方式还是有一定的了解必要。 小结: 当前我们已经学了 redis几个基本的全局命令: get\set是redis的核心命令 ① keys: 用来匹配规则pattern的所有key.
② exists: 用来判定指定的key是否存在.
③ (p)expire: 给key设置过期时间. --- redis的过期策略
④ (p)ttl: 查询key的过期时间.
⑤ type: 查询key对应的value类型.
⑥ del: 删除指定的key 感谢你的阅读
祝你好运向阳而生~