总体配置相关参数

配置名 含义 默认值 可选值 是否支持config   set配置热生效
daemonize 是否是守护进程 no yes|no
port 端口号 6379 整数
loglevel 日志级别 notice debug|verbose|notice|warning
logfile 日志文件名 自定义,建议以端口号为名
unixsocket unix套接字 空(不通过unix套接字来监听) 指定套接字文件
unixsocketperm unix套接字权限 0 Linux三位数权限
pidfile Redis运行的进程Pid文件 /var/run/redis.pid /var/run/redis-{port}.pid
lua-time-limit Lua脚本"超时时间"(单位:毫秒) 5000 整数,但是此超时不会真正停止脚本运行
tcp-backlog tcp-backlog 511 整数
watchdog-perioid 看门狗,用于诊断Redis的延迟问题,些参数是检查周期。此参数需要在运行时配置才能生效。 0 整数
activerehashing 指定是否激活重置哈希 yes yes|no
dir 工作目录(aof、rdb、日志文件都存放在此目录) ./(当前目录) 自定义

内存相关参数

配置名 含义 默认值 可选值 是否支持config set配置热生效
maxmemory 最大可用内存(单位字节) 0(没有限制) 整数
maxmemory-policy 内存不够时,淘汰策略 noeviction volatile-lru->用lru算法删除过期的键值
allkeys-lrt->用lru算法删除所有键值
volatile-random->随机删除过期的键值
allkeys-random->随机删除任何键值
volatile-ttl->删除最近要到期的键值
noeviction->不删除键
maxmemory-samples 检测LRU采样数 5 整数

AOF相关配置参数

配置名 含义 默认值 可选值 是否支持config   set配置热生效
appendonly 是否开启AOF持久化模式 no yes|no
appendfsync AOF同步磁盘频率 everysec always|everysec|no
appendfilename AOF文件名 appendonly.aof appendonly-{port}.aof
aof-load-truncated 加载AOF文件时,是否忽略AOF文件不完整的情况,让Redis正常启动 yes yes|no
no-appendfsync-no-rewrite 设置为yes表示rewrite期间对新写操作不fsync,暂时存在缓冲区,等rewrite完成后再写入 no yes|no
auto-aof-rewrite-min-size 触发rewrite的AOF文件最小阀值,单位MB 64mb 整数+mb
auto-aof-rewrite-percentage 触发rewrite的AOF文件的增长比例条件 100 整数
aof-rewrite-incremental-fsync AOF重写过程中,是否采取增量文件同步策略 yes yes|no

RDB相关配置参数

配置名 含义 默认值 可选值 是否支持config   set配置热生效
save RDB触发条件 save 900 1
    save 300 10
    save 60  10000
如果没有该配置,代表不使用自动RDB策略
dbfilename RDB文件名 dump.rdb dump-{port}.rdb
rdbcompression RDB文件是否压缩 yes yes|no
rdbchecksum RDB文件是否使用校验和 yes yes|no
stop-writes-on-bgsave-error bgsave执行错误,是否停止Redis接受写请求 yes yes|no

慢查询相关配置参数

配置名 含义 默认值 可选值 是否支持config set配置热生效
slowlog-log-slower-than 慢查询被记录的阀值,单位微秒 10000 整数
slowlog-max-len 最多记录慢查询的条数 128 整数
latency-monitor-threshold Redis服务内存延迟监控 0(关闭) 整数

数据结构优化配置

配置名 含义 默认值 可选值 是否支持config set配置热生效
hash-max-ziplist-entries hash数据结构优化参数 512 整数
hash-max-ziplist-value hash数据结构优化参数 64 整数
list-max-ziplist-entries list数据结构优化参数 512 整数
list-max-ziplist-value list数据结构优化参数 64 整数
set-max-insert-entries set数据结构优化参数 512 整数
zset-max-ziplist-entries zset数据结构优化参数 128 整数
zset-max-ziplist-value zset数据结构优化参数 64 整数
hll-sparse-max-bytes HyperLogLog数据结构优化参数 3000 整数

复制相关配置

配置名 含义 默认值 可选值 是否支持config set配置热生效
slaveof 指定当前从节点复制哪个主节点,参数:主节点ip和port ip port 否,但可以用slaveof命令设置
repl-ping-slave-period 主节点定期向从节点发送ping命令的周期,用于判定从节点是否存活。单位秒 10 整数
repl-timeout 主从节点复制超时时间,单位秒 60 整数
repl-backlog-size 复制积压缓存区大小 1M 整数
repl-backlog-ttl 主节点在没有从节点的情况下多长时间后释放复制积压缓存区空间,单位秒 3600 整数
slave-priority 从节点的优先级 100 0-100
min-slaves-to-write 当主节点发现从节点数据小于min-slaves-to-write且延迟小于等于min-slaves-max-lag时,master停止写入操作 0 整数
min-slaves-max-lag 10 整数
slave-server-stale-data 当从节点与主节点连接中断时,如果此参数值设置为yes,从节点可以继续处理客户端的请求。否则除info和slaveof命令之外,拒绝所请求并统一回复“SYNC   with master in progress" yes yes|no
slave-read-only 从节点是否开启只读模式,集群架构下从节点默认读写都不可用,需要调用readonly命令开启只读模式 yes yes|no
repl-disable-tcp-nodelay 是否开启主从复制socket的NO_DELAY选项:
    yes:Redis会合并小的TCP包来节省带宽,但这样会增加同步延迟,造成主从数据不一致
    no:主节点会立即发送同步数据,没有延迟
no yes|no
repl-diskless-sync 是否开启无盘复制 no yes|no
repl-diskless-sync-delay 开启无盘复制后,需要延迟多少秒后进行创建RDB操作,一般用于同时加入多个节点时,保证多个从节点共享RDB 5 整数

客户端相关配置

配置名 含义 默认值 可选值 是否支持config set配置热生效
maxclients 最大客户端连接数 10000 整数
client-output-buffer-limit 客户端输出缓冲区限制 normal 0 0 0
    slave 256mb 64mb 60
    pubsub 32mb 8mb 60
整数
timeout 客户端闲置多少秒后关闭连接,单位秒 0(永不关闭) 整数
tcp-keepalive 检测TCP连接活性的周期,单位秒 0(不检测) 整数

安全相关配置参数

配置名 含义 默认值 可选值 是否支持config set配置热生效
requirepass 密码 自定义
bind 绑定IP 127.0.0.1 自定义
masterauth 从节点需要配置的主节点密码 主节点密码

哨兵相关配置参数

配置名 含义 默认值 可选值 是否支持config set配置热生效
sentinel monitor   定义监控的主节点名、ip、port、主观下线票数 sentinel monitor mymaster 127.0.0.1 6379 2 自定义masterName实际的ip port 票数 支持
sentinel down-after-milliseconds   sentinel判定节点不可达的毫秒数 sentinel down-after-milliseconds mymaster 30000 整数 支持
sentinel parallel-syncs   在执行故障转移时,最多有多少个从服务器同时对新的主服务器进行同步 sentinel parallel-syncs mymaster 1 大于0,不超过从服务器个数 支持
sentinel failover-timeout  故障迁移超时时间 sentinel failover-timeout mymaster 180000 整数 支持
sentinel auth-pass  主节点密码 主节点密码 支持
sentinel notification-script  故障转移期间脚本通知 脚本文件路径 支持
sentinel client-reconfig-script  故障转移成功后脚本通知 脚本文件路径 支持

Cluster相关配置参数

配置名 含义 默认值 可选值 是否支持config set配置热生效
cluster-node-time 集群节点超时时间,单位毫秒 15000 整数
cluster-migration-barrier 主从节点切换需要的从节点数最小个数 1 整数
cluster-slave-validity-factor 从节点有效性判断因子,当从节点与主节点最后通信时间超过(cluster-node-timeout*slave-validity-factor)+repl-ping-slave-period时,对应从节点不具备故障转移资格,防止断线时间过长的从节点进行故障转移,设置为0表示从节点永不过期 10 整数
cluster-require-full-coverage 集群是否需要所有的slot都分配给在线节点,才能正常访问 yes yes|no
cluster enabled 是否开启集群模式 no yes|no
cluster-config-file 集群配置文件名称 nodes.conf nodes-{port}.conf


本文是根据《Redis开发与运维》一书整理的关于Redis的相关配置参数,随着Redis版本的更新,参数可能有所调整,最好的解释还是来自官方文档或安装包中redis.conf配置文件中对于参数的解释。