Redis---持久化

7.持久化

  Redis是内存型数据库,为了保证数据在断电后不会丢失,需要将内存中的数据持久化到硬盘上。

RDB持久化

  将某个时间节点的所有数据都放在硬盘上。可以将快照复制到其他服务器从而创建具有相同数据的服务器副本。如果系统发生崩溃,将会丢失最后一次创建快照之后的数据。如果数据量很大,保存快照的时间会很长。

AOF持久化

  将写命令添加到AOF文件(Append Only File)的末尾

  使用AOF持久化需要设置同步选项,从而确保写命令什么时候会同步到磁盘文件上。这是因为对文件进行写入并不会马上将内容同步到磁盘上,而是先存储到缓冲区,然后由操作系统决定什么时候同步到磁盘。有以下同步选项:

选项 同步频率
always 每个写命令都同步
everysec 每秒同步一次
no 让操作系统来决定何时同步
  • always选项会严重的减低服务器的性能
  • everysec选项比较合适,可以保证系统崩溃时只会丢失一秒左右的数据,并且Redis每秒执行一次同步对服务器性能几乎没有任何影响。
  • no选项并不能给服务器性能带来多大提升,而且也会增加系统崩溃时数据丢失的数量

  随着服务器写请求的增多,AOF文件会越来越大。Redis提供了一种将AOF重写的特性,能够去除AOF文件中的冗余写命令。

posted @ 2019-07-04 20:45  yjxyy  阅读(151)  评论(0编辑  收藏  举报