一、redis特性
- 存储在内存的饿键值堆数据持久化到硬盘中
- 复制特性扩展读性能
- 客户端分片来实现写性能
- 可存储5中数据结构:string list set zset hash
二、Redis持久
1. 快照持久化
- 会丢失数据,如果在创建快照的时候系统崩溃
- save 60 10000 在60秒内有10000次写入系统就会自动出发BGSAVE命令,创建快照,可以配置多个save命令,任何一个满足就创建快照
- 只是适用于那些即使丢失数据也不会造成问题的系统
2. AOF
- 被执行的命令写入AOF文件中,记录数据的变化,只需要执行AOF文件内容就能恢复数据
(1) - 有可能不丢失数据,有可能丢失1秒内的数据
三、主从复制
- 从服务器连接主服务器,发送SYNC命令;
- 主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令;
- 主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令;
- 从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;
- 主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令;
- 从服务器完成对快照的载入,开始接收命令请求,并执行来自主服务器缓冲区的写命令;