原来我们都是通过客户端发送save命令来生产RDB,现在我们配置一次自动生成RDB
这样的好处有:
1.怕你忘了
2.省心方便
当然也有缺点:
会给硬盘造成压力
上面这张表中的意思是:
1.在900秒钟改变了1条数据,那么自动生成RDB
2.在300秒钟改变乐10条数据,那么自动生成RDB
3.在60秒钟改变了10000条数据,那么自动生成RDB
最佳配置:
首先去掉自动生成RDB
dbfilename dump-${port}.rdb
#为什么我们要家端口号呢,因为我们的Redis是单线程的,然而我们的机 器一般都是多核的,也就是说我们可以布置多个Redis来利用资源
dir /bigdiskpath
#我们不使用当前地址,而是使用一个大磁盘
stop-wirtes-on-bgsave-error yes
#bgsave发生错误就停止写入
rdbcompression yes
#采用压缩的格式
更改配置:
Redis目录下的redis.conf(去掉自动save,添加日志)
在我们往Redis中填充5000000条数据后
一个客户端的请求为save(使用bgsave则不会发生阻塞):
另一个客户端为get:
这条命令的执行时间为:8.94s,所以我们可以知道在save时会发生阻塞
查看日志:tail -f 等同于--follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止