redis实战学习笔记p1-12

1.redis定义

内存的键值数据库,在内存中的优势是访问速度比磁盘高几个量级,缺点是成本高昂,掉电不能持久保存,因此有运行过程中持久化的需求,也就是掉电之后能从持久化存储中恢复。

2.AOF日志和RDB快照

这两个都是用来解决持久化的方法,AOF通过存储数据库执行过的指令,来恢复,并且因为存储的是已经执行成功的指令不存在指令有语法错误的情况。

因为数据库可能对同一个位置进行多次操作,因此对于一个位置的最新值我们保留过往的记录是有浪费的,因此可以在一段时间后就重写AOF日志

RDB也叫Redis database,在磁盘以文件的形式存储redis在内存中的状态,为了防止阻塞主线程使用了fork子进程生成快照的方法,为了让redis在生成快照时可写可读使用了写时拷贝的机制,同时为了防止redis快照花费时间多在多次快照之间用AOF日志记录操作的命令。

3.高可用的方法:使用主从一致,主库写,多库读的模式来分担压力,需要解决的问题是主从数据库的一致性问题。

使用全量复制RDB快照来复制,同时在复制之后会通过基于长连接的命令以及增量的RDB快照来减少资源消耗。

4.主库崩溃的解决方法

添加监控,使用哨兵监控主库,同时为了确保主库是真的下线避免无所谓的换主库使用哨兵集群少数服从多数监控;之后哨兵需要选从库,依据筛选和打分的机制;最后是通知其他从库和客户端。

5.哨兵集群

哨兵集群的互相发现是通过在主库订阅和发布信息,然后互相得到对方的信息,从库列表信息是从主库获得,同时客户端了解哨兵集群也是通过在主库发布和订阅信息。

6.String的问题

对于小数据,string的额外信息占用空间大

7.统计方法

聚合统计、排序统计、二值统计、基数统计

相关推荐
冬木家居37 分钟前
40㎡客厅变形记,小家住出大自由[特殊字符]
android·经验分享·笔记·智能家居·微信公众平台
Mr.朱鹏38 分钟前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
摇滚侠40 分钟前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
qiuhaipeng11 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库
wxwx_bscxy3222 小时前
基于Python新冠疫情可视化分析系统的设计与实现
java·数据库·spring boot·python·微信小程序·sqlite
剑之所向2 小时前
.NET 官方`System.Threading.Channels`
前端·javascript·数据库
推送者3 小时前
用宠物照片制作桌宠:从AI拆帧到九点标定的本地化实现笔记
笔记·宠物·用宠物照片制作桌宠
词却3 小时前
数据库基础:DQL 数据查询语言
数据库·oracle
一条破秋裤3 小时前
16_TIM编码器接口测速
笔记·stm32·学习
tju新生代魔迷3 小时前
Verilog HDL 学习笔记(十)| 第10章 时序和延迟
笔记·学习·fpga开发