Redis配置文件代码讲解

Redis配置文件解析网上都有,这里不赘述了。提供一些值得修改的参数,标注红色的参数尤其需要注意,不然容易出现主从全量同步死循环

NETWORK
bind 127.0.0.1 默认是bind 127.0.0.1,注释掉
protected-mode no 默认protected-mode yes,改为no
port 6379  建议修改掉,避免使用默认端口
tcp-backlog 511 建议调大至2048并同时调大Linux内核参数 /proc/sys/net/core/somaxconn 至2048
GENERAL
logfile "" 建议修改日志的路径
SNAPSHOTTING

save 900 1
save 300 10
save 60 10000  注释掉这三行触发式rdb持久化,高并发情况下开启触发式持久化容易一直做save操作

dbfilename dump.rdb 根据实际情况修改,建议修改为dump+端口.rdb

dir ./ 根据实际情况修改 ,建议修改成和logfile,配置文件在同一个父目录下 如/app/redis/{conf,data,log}
REPLICATION

replica-read-only yes  建议修改为no,当主节点故障时,可立即使用从节点。

repl-timeout 60  建议设置更久,避免高并发情况下大节点全量复制无法在60秒内完成

repl-backlog-size 1mb 建议设置为100mb+,避免全量复制生成rdb+传输rdb+加载rdb时,主节点的复制挤压缓冲区不够用导致一直在全量复制。
LAZY FREEING  惰性删除参数,开启配置项避免大key过期删除导致服务阻塞

lazyfree-lazy-eviction yes 驱逐策略惰性删除,建议开启
lazyfree-lazy-expire yes 过期key惰性删除,建议设置开启
lazyfree-lazy-server-del yes del操作惰性删除,建议开启
replica-lazy-flush yes    flush惰性删除,建议开启
APPEND ONLY MODE

appendonly yes  建议从节点开启

appendfilename "appendonly.aof" 根据实际端口修改,建议修改为appendonly+端口.aof

appendfsync always 从节点建议修改为everysec,折中持久化策略,每秒持久化一次到aof中。
auto-aof-rewrite-percentage 100 根据实际情况修改,避免在业务高峰aof文件刚好膨胀100%,触发自动aofrewrite操作,阻塞服务
ADVANCED CONFIG

client-output-buffer-limit replica 0 0 0 建议关闭主从复制buffer限制,避免高并发情况下,slave无法在硬限制和软限制期间完成全量同步,造成主从同步死循环
ACTIVE DEFRAGMENTATION

activedefrag no 建议关闭,避免在高峰段出现碎片回收。碎片率上升时,可在业务低峰时段开启。

知识点扩展:

如果认为Redis是一个key value存储, 可以使用它来代替MySQL;如果认为它是一个可以持久化的cache, 可能只是用它保存一些频繁访问的临时数据(代替Memcached);除此之外,还可以把Redis当做一个轻量级的消息队列使用,因为它内置就支持 list数据结构和PUB/SUB命令;还可以当做一个轻量级的分布式锁系统。Redis是REmote DIctionary Server的缩写,在Redis在官方网站的解释是:

Redis is an open source, advanced key-value store.
It is often referred to as a data structure server since keys
can contain strings, hashes, lists, sets and sorted sets.

到此这篇关于Redis配置文件代码讲解的文章就介绍到这了,更多相关Redis配置文件参考内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!


数据运维技术 » Redis配置文件代码讲解