Redis 配置详解

Redis 配置详解

网络

########################## NETWORK ##########################

bind:指定 Redis 只接收来自于特定 IP 地址的请求,默认处理所有请求。

  • bind 127.0.0.1

protected-mode:是否开启保护模式,默认开启。
- protected-mode yes

port:Redis 监听的端口号。

  • port 6379

tcp-backlog:确定 TCP 连接中已完成队列的长度。
- tcp-backlog 511

timeout:客户端空闲超时时间。
- timeout 0

tcp-keepalive:TCP 保持存活参数。
- tcp-keepalive 300

daemonize:是否在后台执行。
- daemonize yes

pidfile:Redis 的进程文件。
- pidfile /var/run/redis/redis.pid

loglevel:指定服务端日志的级别。
- loglevel notice

logfile:指定记录日志的文件。
- logfile /usr/local/redis/var/redis.log

databases:数据库的数量。

  • databases 16

持久化

########################## SNAPSHOTTING ##########################

save:RDB 核心规则配置,指定时间间隔和更新操作次数来同步数据到硬盘。

  • save 900
    • save 300 10
      • save 60 10000

stop-writes-on-bgsave-error:RDB 持久化出现错误后的处理方式。

  • stop-writes-on-bgsave-error yes

rdbcompression:存储至本地数据库时是否压缩数据。
- rdbcompression yes

rdbchecksum:是否校验 rdb 文件。

  • rdbchecksum yes

dbfilename:指定本地数据库文件名。
- dbfilename dump.rdb

dir:数据目录。

  • dir /usr/local/redis/var

复制

########################## REPLICATION ##########################

replica-serve-stale-data:从库与主机失去连接或复制进行时的运行方式。
- replica-serve-stale-data yes

replica-read-only:从服务器是否只读。
- replica-read-only yes

repl-diskless-sync:是否使用 socket 方式复制数据。
- repl-diskless-sync no

repl-diskless-sync-delay:diskless 复制的延迟时间。
- repl-diskless-sync-delay 5

repl-ping-slave-period:从库向服务器发送 ping 请求的时间间隔。
- repl-ping-slave-period 10

repl-timeout:复制连接超时时间。
- repl-timeout 60

repl-disable-tcp-nodelay:是否禁止复制 tcp 链接的 tcp nodelay 参数。
- repl-disable-tcp-nodelay no

repl-backlog-size:复制缓冲区大小。
- repl-backlog-size 1mb

repl-backlog-ttl:master 没有 slave 时释放复制缓冲区内存的时间长度。
- repl-backlog-ttl 3600

replica-priority:当 master 不可用时,选举 slave 为 master 的优先级。
- replica-priority 100

min-replicas-to-write:master 最少需要的健康 slave 个数才能执行写命令。
- min-replicas-to-write 3

min-replicas-max-lag:健康 slave 的延迟判断标准。

  • min-replicas-max-lag 10

安全

########################## SECURITY ##########################

requirepass:配置认证密码。
- requirepass foobared

rename-command:修改危险命令的名称或禁止命令。

客户端

########################## CLIENTS ##########################

maxclients:能连上 Redis 的最大客户端连接数量。

  • maxclients 10000

内存管理

########################## MEMORY MANAGEMENT ##########################

maxmemory:设置 Redis 使用的内存字节数。
- maxmemory <bytes>

maxmemory-policy:内存容量超过 maxmemory 后的处理策略。

  • volatile-lru
    • volatile-random
      • volatile-ttl
      • allkeys-lru
      • allkeys-random
      • noeviction

maxmemory-samples:lru 检测的样本数。

replica-ignore-maxmemory:是否开启 slave 的最大内存。

延迟释放

########################## LAZY FREEING ##########################

lazyfree-lazy-eviction:以非阻塞方式释放内存。
- lazyfree-lazy-eviction no

lazyfree-lazy-expire
- lazyfree-lazy-expire no

lazyfree-lazy-server-del
- lazyfree-lazy-server-del no

replica-lazy-flush

  • replica-lazy-flush no

仅追加模式

########################## APPEND ONLY MODE ##########################

appendonly:是否开启 Append Only 模式。
- appendonly no

appendfilename:指定本地数据库文件名。
- appendfilename "appendonly.aof"

appendfsync:aof 持久化策略的配置。
- always
- everysec
- no

no-appendfsync-on-rewrite:rewrite 期间对新写操作的处理。
- no-appendfsync-on-rewrite no

auto-aof-rewrite-percentage:aof 自动重写的条件。
- auto-aof-rewrite-percentage 100

auto-aof-rewrite-min-size:允许重写的最小 aof 文件大小。
- auto-aof-rewrite-min-size 64mb

aof-load-truncated:处理不完整的 aof 文件的方式。
- aof-load-truncated yes

aof-use-rdb-preamble:加载 Redis 时对 AOF 文件的识别。

LUA

########################## LUA SCRIPTING ##########################

lua-time-limit:Lua 脚本的最大时间限制。

  • lua-time-limit 5000

集群

########################## REDIS CLUSTER ##########################

cluster-enabled:集群开关。
- cluster-enabled yes

cluster-config-file:集群配置文件的名称。

  • cluster-config-file nodes-6379.conf

cluster-node-timeout:节点互连超时的阀值。
- cluster-node-timeout 15000

cluster-replica-validity-factor:判断 slave 节点与 master 断线时间是否过长的因子。
- cluster-replica-validity-factor 10

cluster-migration-barrier:master 的 slave 数量迁移条件。
- cluster-migration-barrier 1

cluster-require-full-coverage:集群提供服务的条件。

  • cluster-require-full-coverage yes

慢指令

########################## SLOW LOG ##########################

slowlog-log-slower-than:记录慢命令的时间阈值。
- slowlog-log-slower-than 10000

slowlog-max-len:慢查询日志长度。

延迟监控

########################## LATENCY MONITOR ##########################

latency-monitor-threshold:延迟监控的阈值。

事件通知

########################## EVENT NOTIFICATION ##########################

notify-keyspace-events:键空间通知的参数。

高级配置

########################## ADVANCED CONFIG ##########################

hash-max-ziplist-entries:hash 数据结构的相关配置。
- hash-max-ziplist-entries 512

hash-max-ziplist-value
- hash-max-ziplist-value 64

list-max-ziplist-size
- list-max-ziplist-size -2

list-compress-depth
- list-compress-depth 0

set-max-intset-entries
- set-max-intset-entries 512

zset-max-ziplist-entries
- zset-max-ziplist-entries 128

zset-max-ziplist-value
- zset-max-ziplist-value 64

hll-sparse-max-bytes
- hll-sparse-max-bytes 3000

stream-node-max-bytes
- stream-node-max-bytes 4096

stream-node-max-entries
- stream-node-max-entries 100

activerehashing:是否对 hash 表进行重新 hash 以释放内存。
- activerehashing yes

client-output-buffer-limit:对客户端输出缓冲的限制。
- client-output-buffer-limit normal 0 0 0
- client-output-buffer-limit replica 256mb 64mb 60
- client-output-buffer-limit pubsub 32mb 8mb 60

client-query-buffer-limit:客户端查询的缓存极限值大小。

proto-max-bulk-len:Redis 协议中批量请求的限制。

hz:Redis 执行任务的频率。
- hz 10

dynamic-hz:是否启用动态赫兹。

aof-rewrite-incremental-fsync:aof 重写时的 fsync 方式。
- aof-rewrite-incremental-fsync yes

rdb-save-incremental-fsync:rdb 保存时的 fsync 方式。

主动碎片整理

########################## ACTIVE DEFRAGMENTATION ##########################

activedefrag:是否启用活动碎片整理。
- activedefrag yes

active-defrag-ignore-bytes:启动活动碎片整理的最小碎片浪费量。
- active-defrag-ignore-bytes 100mb

active-defrag-threshold-lower:启动活动碎片整理的最小碎片百分比。
- active-defrag-threshold-lower 10

active-defrag-threshold-upper:最大碎片百分比。
- active-defrag-threshold-upper 100

active-defrag-cycle-min:碎片整理的最小 CPU 工作量。
- active-defrag-cycle-min 5

active-defrag-cycle-max:碎片整理的最大 CPU 工作量。
- active-defrag-cycle-max 75

active-defrag-max-scan-fields:处理的 set/hash/zset/list 字段的最大数目。

  • active-defrag-max-scan-fields 1000
  • 14
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林小果呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值