1. 使用AOF持久化,aof文件过大
Redis的AOF机制,会将所有的写命令按照一定频率(no, always, every seconds)写入到日志文件中,当Redis停机重启后从日志文件中恢复数据。
但是,当用的时间长了,这个文件会越来越大,使用BGREWRITEAOF
命令对redis的AOF进行重写。
AOF重写:
- 随着AOF文件越来越大,里面会有大部分是重复命令或者可以合并的命令(100次incr = set key 100)
- 重写的好处:减少AOF日志尺寸,减少内存占用,加快数据库恢复时间。
使用 Redis 3.2.9,未重写前,日志文件大小:
$ docker exec -it redis-6379 bash
root@1ff606aa6ad6:/data# redis-cli
127.0.0.1:6379> auth yourpassword
OK
127.0.0.1:6379> BGREWRITEAOF
Background append only file rewriting started
过一会,重写完成后:
可以看到日志文件大大的缩小了。