什么是持久化:
以前在其他地方也听过“持久化”这个词,一般这个词都是说“把数据保存到硬盘中”;
例如银行数据那么大,它得持久保存,那他怎么持久化,当然保存到数据库里,那数据库位于哪?当然是硬盘啦!!!
持久化的目的:
Redis的数据操作都在内存中,redis崩掉的话,会丢失。Redis持久化就是对数据的更新异步的保存在磁盘上,以便数据恢复。
持久化的方式:
Redis的所有数据都是保存在内存中,有4种持久化方式:
- 半持久化模式:即Snapshot(RDB)快照模式,也是默认方式,不定期的通过异步方式保存某一时刻的数据在磁盘(这称为“”);
- 全持久化模式:即append-only file(AOF),就是以追加的方式把每一次数据变化写入到磁盘文件里面,记录所有写操作的命令;
- 虚拟内存方式
- diskstore方式
------------------------------------------------------------------------------------------------------------------------------------------
我有一个疑问?把数据保存到内存是为了快速存取,落地持久化到硬盘还怎么保证快速?
答: 持久化的目的是备份,而不是数据交互,实际交互还是从内存取数据的,所以持久化不需要关心快速问题;