Redis配置参数详解
Posted ydongy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis配置参数详解相关的知识,希望对你有一定的参考价值。
工欲善其事,必先利其器。
配置
一、redis配置文件存放路径
- apt安装方式
$ sudo vim /etc/redis/redis.conf
- 编译安装,存放在redis解压目录的路径下redis.conf
$ sudo vim redis.conf
二、配置常用参数
tcp-backlog设置tcp的backlog,backlog其实是一个连接队列,backlog队列总和=未完成三次握手队列 + 已经完成三次握手队列。在高并发环境下你需要一个高backlog值来避免慢客户端连接问题。注意Linux内核会将这个值减小到/proc/sys/net/core/somaxconn的值,所以需要确认增大somaxconn和tcp_max_syn_backlog两个值来达到想要的效果
参数 | 作用 |
---|---|
include |
导入并加载指定配置文件信息,用于快速创建redis公共配置较多的redis实例配置文件,便于维护 |
daemonize |
是否将redis服务设置为守护进程 |
pidfile |
进程管道id文件 |
port |
端口号,默认6379 |
tcp-backlog |
backlog 其实是一个连接队列,backlog 队列总和=未完成三次握手队列 + 已经完成三次握手队列。在高并发环境下你需要一个高backlog值来避免慢客户端连接问题。注意Linux内核会将这个值减小到/proc/sys/net/core/somaxconn 的值,所以需要确认增大somaxconn 和tcp_max_syn_backlog 两个值来达到想要的效果 |
bind |
允许访问的IP,默认只允许本机访问 |
protected-mode |
设置外部网络可以直接访问,默认yes,表示开启。如若关闭即使在没有认证的情况下也需要配置bind ip |
timeout |
客户端闲置等待最大时长,达到最大值后关闭连接。默认值为0,表示一直不关闭 |
tcp-keepalive |
单位为秒,如果设置为0,则不会进行Keepalive 检测,默认:300 |
loglevel |
日志级别,分为:debug | verbose | notice | warning,默认为notice |
logfile |
日志文件存放地址 |
syslog-enable |
把日志记录到系统日志,默认no |
syslog-ident |
开启系统日志,默认redis开头 |
database |
逻辑库的数量,默认16 |
save |
RDB文件同步的频率 save 900 1 :表示900s发生1次修改 save 300 10 :表示300s发生10次修改 save 60 10000 :表示60s发生10000次修改 注意:是修改,而不是发送指令的次数,例如get执行就不算 |
stop-writes-on-bgsave-error |
后台存储过程中如果出现错误现象,是否停止保存操作,通常默认为开启状态,即:yes |
rdbcompression |
设置存储至本地数据库时是否压缩数据,默认为 yes,采用 LZF 压缩 |
rdbchecknum |
设置是否进行持久化文件格式校验,该校验过程在写文件和读文件过程均进行,redis使用CRC64算法来进行数据校验,但是这样做会增加大约10%的性能消耗,如果希望获取到最大的性能提升,可以关闭此功能 |
dbfilename |
rdb同步本地文件名称,默认dump.rdb |
dir |
RDB和AOF持久化文件存放目录 |
requirepass |
访问密码,默认无需密码 |
maxclients |
设置同一时间最大客户端连接数,默认无限制。当客户端连接到达上限,Redis会关闭新的连接 |
maxmemory |
占用内存的大小,默认无限制。设置redis可以使用的内存量。一旦到达内存使用上限,redis将会试图移除内部数据,移除规则可以通过maxmemory-policy来指定。 |
maxmemory-policy |
1. volatile-lru:使用LRU算法移除key,只对设置了过期时间的键 2. allkeys-lru:使用LRU算法移除key 3. volatile-random:在过期集合中移除随机的key,只对设置了过期时间的键 4. allkeys-random:移除随机的key 5. volatile-ttl:移除那些TTL值最小的key,即那些最近要过期的key 6. noeviction:不进行移除。针对写操作,只是返回错误信息 |
appendonly |
开启AOF备份 |
appendfsync |
AOF同步的频率,分为: no:由操作系统控制每次同步到AOF文件的周期 everysec:每秒将缓冲区中的指令同步到AOF文件中 always:每次写入操作均同步到AOF文件中 |
appendfilename |
aof同步文件名,默认appendonly |
no-appendfsync-on-rewrite |
重写时是否可以运用Appendfsync,用默认no即可,保证数据安全性。 |
auto-aof-rewrite-min-size |
自动重写触发条件设置 |
auto-aof-rewrite-percentage |
自动重写触发条件设置 |
以上是关于Redis配置参数详解的主要内容,如果未能解决你的问题,请参考以下文章