Redis3.0中redis.config的一些笔记

来源:互联网 发布:视频打马赛克软件 编辑:程序博客网 时间:2024/05/01 22:28

接触redis有好一段时间了,今天打开redis.config这个配置文件打算全部都看一遍,同时也在这里做一下笔记。

一. Include部分
该部分主要用于包含redis的其它配置文件,用法如下:

include /path/to/other.conf

二. 常用部分
1. 设置redis为守护进程:daemonize no 这里的“no”改为“yes”;
2. PID文件路径配置:pidfile /var/run/redis.pid 【当守护进程启动后,redis将会在此路径生成pid文件,而pid文件为文本文件,内容只有一行, 记录了该进程的ID,防止进程启动多个副本。只有获得pid文件(固定路径固定文件名)写入权限(F_WRLCK)的进程才能正常启动并把自身的PID写入该文件中。其它同一个程序的多余进程则自动退出】
3. 接入端口配属:port 6379
4. 配置tcp端口接收队列的最大值:tcp-backlog 511 【该值也是tcp协议栈里的send-Q值,即tcp数据包接收队列中最大的任务数】
5. 配置允许访问的ip:bind 192.168.1.100 10.0.0.1【0.0.0.0为允许所有ip访问】
6. 配置unix sock file的路径和权限:unixsocket /tmp/redis.sock
                unixsocketperm 700
                【redis默认不配置该选项】
7. 配置一个连接的空闲最大时间(秒):timeout 0 【0代表无限,也就是禁止该配置】
8. 配置长连接时发送ack的周期(秒):tcp-keepalive 0【0代表无限,也就是禁止该配置】
9. 配置日志输出的类型:loglevel notice
                【debug:用于开发环境的所有调试信息;
                verbose:有很多有用调试信息,但信息量次于debug;
                notice : 适度的调试信息,可用于生产环境;
                warning:重要的错误信息】
10. 配置log路径文件:logfile “redis.log” 【默认为“”,此时代表标准输出】
11. 打开关闭syslog系统:syslog-enabled no || yes 【默认不配置】
12. 指定syslog标识符:syslog-ident redis 【默认不配置】
13. 指定syslog设备(facility):syslog-facility local0【默认怒配置,只能是local0-local7】
14. 设置数据库的数量:databases 16【默认是16个】

三. 快照配置
1. 数据持久化策略配置:save 900 1【save 秒数 改变的健数,,可写多条】
2. 配置持久化错误是否禁止写入:stop-writes-on-bgsave-error yes【yes情况下,如果写入磁盘时错误,redis将禁止客户端的数据写入以提醒客户端】
3. 配置是否dump .rdb时使用LZF压缩字符串:rdbcompression yes
4. 配置是否对rdb文件进行crc64检验:rdbchecksum yes
5. 配置dump的位置:dbfilename dump.rdb
6. 配置工作目录:dir ./ 【必须是一个路径】

四. 主从复制
1. slave服务配合master的信息: slaveof
2. 设置链接master的密码:masterauth
3. 配置slave与master链接中断时的反应:slave-serve-stale-data yes 【yes:继续正常反馈客户端,no:返回‘SYNC with master in progress’错误给客户端】
4. 配置slave是否只读:slave-read-only yes【默认是只读】
5. 开启diskless:repl-diskless-sync no【master复制给slave时,(1)基于磁盘:新进程dump文件到磁盘,再通过父进程通知slave去复制,(2)基于socket(diskless):新进程直接通过socket动态将数据传输给slave】
6. 配置多少秒内的连接的slave一并同步数据:repl-diskless-sync-delay 5 【设为0时就是不等待】
7. 配置slave与master的ping时间周期(seconds):repl-ping-slave-period 10
8. slave和master间ping的超时时间:repl-timeout 60
9. 配置slave和master时tcp是否将小包合并为大包再传输:repl-disable-tcp-nodelay no
10. 设置master的backlog的大小:repl-backlog-size 1mb【backlog是master与slave断开后的缓存】
11. 设置master在所有slave关闭后释放backlog的时间间隔(seconds): repl-backlog-ttl 3600
12. 设置slave成为master的优先级:slave-priority 100 【当master不可用时,优先级高的slave将会成为master,而设置为0后将不会成为master】
13. 设置master至少N个slave和至多MS延迟下允许写操作:
                                min-slaves-to-write N
                                min-slaves-max-lag M
                                【设置为0,则表示禁用】

四. 安全
to do…

0 0
原创粉丝点击