Redis配置文件解析
INCLUDES 当我们有多个配置文件的时候,我们可以通过include关键字来同时加载多个配置文件
- include /path/to/local.conf
- include /path/to/other.conf
注意,如果有需要覆盖掉原文件某些key值的话,最好将要覆盖的文件include在最后一行
NETWORK 网络
bind 127.0.0.1 # 绑定的ip地址,如果需要远程访问本地redis的话,就要另外配ip
protected-mode yes # 是否开启安全保护,一般都是开启
port 6379 # 我们可以配置redis的启动端口
GENERAL 通用配置
daemonize yes # 是否将redis设置为守护进程,默认是false
pidfile /var/run/redis_6379.pid # pid文件的生成路径,pid记录了当前reids进程的pid
loglevel notice # 输出的日志级别,redis为我们提供了四种日志级别
--debug (a lot of information, useful for development/testing)
-- verbose (many rarely useful info, but not a mess like the debug level)
-- notice (moderately verbose, what you want in production probably)
-- warning (only very important / critical messages are logged)
logfile "" # 输出的日志文件名称,如果为""的话,表示直接为标准输出
databases 16 # 设置数据库的数量,默认为16个
always-show-logo yes # 启动reids的时候,是否展示redis的logo
SNAPSHOTTING 快照,主要是关于持久化
save <seconds> <changes> # 持久化时间策略,save 900 1 即900秒内发生变动就保存一次
stop-writes-on-bgsave-error yes # 持久化发生错误时是否停止
rdbchecksum yes # 是否启用rdb检查应用
dbfilename dump.rdb # rdb文件名称,默认是dump.rdb
dir ./ # rdb文件的生成路径,默认是当前路径
Redis默认的持久化时间策略
save 900 1 save 300 10 save 60 10000
REPLICATION 有关集群
CLIENTS 连接的客户端
maxclients 10000 # 默认最多的客户端连接数量为10000
MEMORY MANAGEMENT 内存管理
maxmemory <bytes> # 指定最大的内存总额,当超出最大内存的时候,redis默认处理策略为noeviction
-- volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-- allkeys-lru -> Evict any key using approximated LRU.
-- volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-- allkeys-lfu -> Evict any key using approximated LFU.
-- volatile-random -> Remove a random key among the ones with an expire set.
-- allkeys-random -> Remove a random key, any key.
-- volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-- noeviction -> Don't evict anything, just return an error on write operations.
APPEND ONLY MODE ( redis的另一种持久化策略——aof)
appendonly no # redis默认不启用aof,有关aof的内容可以另外在redis持久化文章中看见
appendfilename "appendonly.aof" # 指定 .aof 文件的文件名
-- aof持久化的保存策略
appendfsync everysec # 使用aof持久化的话,redis默认是每秒保存一次,还可以有以下的策略
-- appendfsync always 每个操作都持久化,可能会比较消耗性能
-- appendfsync no 不持久化