这篇文章将为大家详细讲解有关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配置文件代码的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。