Redis配置文件详解
units单位
配置大小单位,开头定义基本度量单位,只支持bytes,大小写不敏感。
INCLUDES
Redis只有一个配置文件,如果多个人进行开发维护,那么就需要多个这样的配置文件,这时候多个配置 文件就可以在此通过 include /path/to/local.conf 配置进来,而原本的 redis.conf 配置文件就作为一个 总闸。
NETWORK
-
bind:绑定redis服务器网卡IP,默认为127.0.0.1,即本地回环地址。访问redis服务只能通过本机的 客户端连接,而无法通过远程连接。如果bind选项为空的话,那会接受所有来自于可用网络接口的 连接。
-
protected-mode:本机保护模式,值为yes时只能本机访问不能远程访问。
-
port:指定redis运行的端口,默认是6379。
-
timeout:设置客户端连接时的超时时间,单位为秒。当客户端在这段时间内没有发出任何指令, 那么关闭该连接。默认值为0,表示不关闭。
GENERAL
-
daemonize:设置为yes表示指定Redis以守护进程的方式启动(后台启动)。
-
pidfile:配置PID文件路径,当redis作为守护进程运行的时候,它会把 pid 默认写到 /var/redis/run/redis_6379.pid 文件里面。
-
loglevel :定义日志级别。默认值为notice,有如下4种取值:
-
debug(记录大量日志信息,适用于开发、测试阶段)。
-
verbose(较多日志信息)。
-
notice(适量日志信息,使用于生产环境)。
-
warning(仅有部分重要、关键信息才会被记录)。
-
-
logfile :配置log文件地址,默认打印在命令行终端的窗口上。
-
databases:设置数据库的数目。
SECURITY
-
requirepass:设置redis连接密码。
比如: requirepass 123 表示redis的连接密码为123。
其他配置
-
maxclients :设置客户端最大并发连接数,默认无限制,Redis可以同时打开的客户端连接数为 Redis进程可以打开的最大数量。 如果设置 maxclients为0 ,表示不作限制。当客户端连接数到达 限制时,Redis会关闭新的连接并向客户端返回错误信息。
-
maxmemory:设置Redis的最大内存,如果设置为0 。表示不作限制。通常是配合maxmemory-policy参数一起使用。
-
maxmemory-policy :当内存使用达到maxmemory设置的最大值时,redis使用的内存清除策略。
清除策略包括:
- volatile-lru:利用LRU算法移除设置过过期时间的key (LRU:最近使用 Least Recently Used )
- allkeys-lru:利用LRU算法移除任何key
- volatile-random:移除设置过过期时间的随机key
- allkeys-random:移除随机key
- volatile-ttl:移除即将过期的key(minor TTL)
- noeviction:不移除任何key,只是返回一个写错误 ,默认选项
详细解释:
单位
#当你需要为某个配置项指定内存大小的时候,必须要带上单位,
#通常的格式就是 1k 5gb 4m 等:
#1k => 1000 bytes
#1kb => 1024 bytes
#1m => 1000000 bytes
#1mb => 10241024 bytes
#1g => 1000000000 bytes
#1gb => 10241024*1024 bytes
文件引入
#引入其他的配置文件
#include /path/to/local.conf
#include /path/to/other.conf
模块加载
#启动时加载模块
#loadmodule /path/to/my_module.so
#loadmodule /path/to/other_module.so
网络
#指定redis只能接受来自此IP绑定的网卡的请求,注意此默认值默认外网是不可访问的
bind 127.0.0.1
#是否开启保护模式。如果没有指定bind和密码,redis只会本地进行访问,拒绝外部访问。
protected-mode