第十八章-发布和订阅
写数据
命令:发布
格式:publish channel 数据
作用:写数据到频道
读数据
有两种模式
1.订阅一个频道
2.模式匹配多个频道
作用:从频道读数据
第二十二章-二进制位数组
格式:set 索引 值 就是设置数组索引的某个元素的值是1还是0
第二十三章-慢查询日志
背景
MySQL也有慢查询日志,Redis也有去。
记录慢查询的日志
Redis记录慢查询的命令操作日志
用户监控命令日志和优化命令
日志用来做什么?就是给用户监控,发现问题,然后优化问题。
第二十四章-监视器
作用
命令执行信息/日志,发给监视器-客户端。而且是实时打印日志-命令执行情况。
流程
步骤
1.客户端发送monitor命令到服务器建立连接
2.服务器把客户端加入到内部的监听器客户端链表
3.平时处理命令的时候,处理完了,就把命令执行情况转发给客户端即可
注:书上介绍的是,服务器处理命令之前,就把命令转发给监视器客户端。
因为监视器只是监视当前正在执行哪些命令,而不是需要知道命令的所有的执行情况。
不管是哪一种情况,如果想知道的信息少就先转发,知道得多就后转发,这都没有关系。
排序
是什么
就是一般的关系数据库也有排序功能,本质上,就是对数据进行排序。 比如,redis就是对key或value进行排序。
如何使用?
sort key/value ASC/DESC
lua
是什么
一个轻量级的脚本语言,类似python这种,但是更加轻量级。
应用场景
最多的是游戏。
还有作为一种脚本语言嵌入到别的软件,比如redis。
事务
就是是否满足数据库的ACID四大特性。redis基本上都满足。
如何使用?
步骤
1.begin命令
即开始事务
2.多个命令
多个命令原子提交
3.end命令
即提交事务
实现原理?
如何实现多个命令原子提交,就是把多个命令放一个集合(队列)里。
总结
数据结构
链表这种数据结构在Redis中几乎是无处不在啊,还有数组,各种数据类型的数组,当然,还有映射。这些都是极为常见的数据结构。
参考
黄建宏