【Redis配置文件】

Redis配置文件

redis.conf 是redis的配置文件,首先需要注意的是,一般我们都会把这个文件做一份拷贝,然后定制化的修改这个copy文件来调整redis的参数。所以,一定保证你有一份原文件。
(1)
在这里插入图片描述
在第43-44行,有一个loadmodule参数,这个其实是redis新特性,redis4.0以后,允许自己定制化开发一些redis的module,来拓展redis的功能。这个最常用的就是bloomfilter模块。可以参见前一篇。
(2)
在这里插入图片描述
保护状态,其实它的英文已经说得很清楚了,这个开启之后只允许本机访问,不允许远程连接redis。这个在做redis集群时很重要。
(3)
在这里插入图片描述
监听的端口,这个默认就在6379.当我们启动客户端时可以直接:redis-cli,也可以指定端口 redis-cli -p 6379.如果不指定,默认在6379.
(4)
在这里插入图片描述
守护进程是否开启。
(5)
在这里插入图片描述
redis中数据库的数量,这个默认是16个,可以在这里动态的配置。
(6)
在这里插入图片描述
这里就比较有意思了,是redis优化的常见地方,这里的save指的是产生一次redis的快照,save 900 1 就是每900s,如果有一次写入就产生一次快照,这个快照是RDB文件,这个文件用于redis的恢复。
这里有个问题简单的提一下:redis的单线程的,save操作涉及到磁盘的IO,那么岂不是会停下redis的服务来做IO?其实不然,真实的做法是要报错快照时,OS会fork一个当前进程的子进程,又子进程来完成IO操作。
这些参数都是和redis持久化有关的参数,一并说了:
在这里插入图片描述
这个参数看名字就能看出来,bgsave就是我们说的fork出来的子进程,当他出错时,主进程停止写入。
在这里插入图片描述
保存在磁盘上的RDB文件是否开启压缩。
除了RDB快照,Redis持久化还有一中方式,是AOF
这个是会保存下来redis的每个写入操作,有点类似日志文件
在这里插入图片描述
有三种方式:always,everysec,no.分别的意思是:每次写入都保存一次,每秒保存一次,不保存。
以上就是常见的一些参数配置,每个环境可以根据当前的服务环境来动态调整。

// 贴一个解析RDB文件的工具:https://github.com/sripathikrishnan/redis-rdb-tools

补充一下

上面提到了RDB的一个分析工具,简单的写一下应用。
在这里插入图片描述
(1)首先按照第二种方式把代码下载下来并且编译安装一下。
(2)启动Redis,开启一个程序,向redis里面写入一些数据来触发rdb的生成,这里可能会有一点问题:在redis的配置文件中:
在这里插入图片描述
这里的dir,如果redis安装的目录是/usr下面的,新建目录需要root权限的,这里可以用sudo获取root权限启动redis,或者把这个目录文件的路径定向到当前用户目录文件下也行。
(3)如果不触发redis自己生成rdb文件,可以采用save/bgsave来手动触发生成rbd。
(4)然后就可以通过命令行参数解析rdb文件了,具体的命令就不演示了,github哪个原文写的很清楚。

发布了370 篇原创文章 · 获赞 48 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_41863129/article/details/103979612