AOF重写

因为AOF是通过保存被执行的写命令来记录数据库状态的,所以随着服务器的运行时间久,AOF的文件会变得越来越大,不仅占用系统资源,而且当通过AOF文件来进行数据还原时花费的额时间也会更久。
为了解决AOF文件体积膨胀的问题,Redis提供了AOF文件重写功能。

  • AOF文件重写功能是通过子进程来执行。
  • 不过子进程在进行AOF重写期间,服务器进程还会继续处理命令请求,而新的命令可能会对现有的数据库状态进行修改,从而导致服务器当前的数据库状态和重写后的AOF文件所保存的数据库状态不一致。
  • 为了解决这一个问题,Redis服务器设置了一个AOF重写缓冲区,这个缓冲区会在服务器进程创建子进程时使用,当redis服务器执行完一个写命令后,会把这个写命令发送给AOF缓冲区和AOF重写缓冲区

你可能感兴趣的:(AOF重写)