include 文件路径
(导入特殊的配置文件)
类似于jsp中的iclude,我们把经常需要修改或者特殊的部分提取出来,然后使用include来导入
port 端口号
(指定运行端口号)
指定redis运行的端口
bind ip地址
(ip地址的绑定)
- 在配置文件里,默认
bind=127.0.0.1
,也就是只接受本机访问 - 如果没有写(默认的被删除且保护模式也被关闭关闭)的情况下,无限制接受任何ip地址的访问
- 关闭保护模式的方法:在80行左右有一个
protected-mode yes
将yes改为no即可,修改完后需要重启 - 如果保护模式没有关闭但是也没有写
bind
的情况下也只允许本机访问
tcp-backlog 数字
(限制等待请求的个数)
- 可以简单理解为一个请求到达后去接受进程处理前的队列的个数
- 默认为0.表示禁用,非0值表示开启
- backlog队列总和=未完成三次握手队列+已完成
- 高并发环境tcp-backlog设置值和超时时限内的Redis吞吐量决定
timeout 数字
(空闲客户端默认关闭时间)
设置一个空闲的客户端维持多少秒后悔自动关闭,若为0则永不关闭
TCP keepalive 数字
(检查客户端是否关闭)
设定每过n秒后检查一次客户端是否被关闭,官方推荐的时间是60秒,如果关闭那就不管了,如果没关闭就继续等待请求
daemonize no/yes
(是否后台运行)
设置是否允许后台运行
pidfile 文件夹路径
存放pid的位置,每一个实例都会产生一个不同的pid文件
loglevel 日志级别
(设置日志级别)
日志级别从低到高:debug,verbose,notice,warning
级别越高记录到的信息越少,级别越低记录的信息越多
logfile 文件路径
(日志文件)
设置日志文件的位置
syslog-ident 表示
(日志标志)
系统日志标识 默认为syslog-ident redis
syslog-facility 值
(设置 syslog 的facility)
设置 syslog 的 facility,值必须是 USER 或者是 LOCAL0-LOCAL7 之间
database 数字
(数据库的数量)
设置数据库的数量,默认是16个
security
设置密码,redis的密码分为临时密码和永久密码
maxcllient 数字
(设置客户端连接数量)
设置客户端连接数量
maxmemory 内存
(最大使用内存)
- 设置redis可使用的内存量,一旦达到上限,redis会试图移除内部数据
- 默认为0,表示无限制
- 移除规则可以通过
maxmemory-policy
来指定,如果redis无法根据移除规则来移除内存中的数据,或者设置了不允许移除数据,那redis则会根据那些需要申请内存的指令返回错误信息,比如:set,lpush等等
maxmemory-policy 策略
策略有以下几种
- volatile-lru:对"过期集合"中的数据采取LRU(最近最少使用)算法。只对设置了过期时间的键
- allkeys-lru :对所有的数据,采用LRU算法
- volatile-random :在过期集合中移除随机的key,支队设置了过期时间的键
- allkeys-random:对所有的数据,移除随机的键
- volatile-ttl:移除那些最近要过期的键
- noeviction:不进行移除,之针对写操作,只返回错误信息
内存不足时,数据清除策略,默认为"volatile-lru"。如果数据的过期不会对"应用系统"带来异常,且系统中write操作比较密集,建议采取"allkeys-lru"
maxmemory-samples 数字
(设置一个样本数量)
- 在样本里面通过策略删除键,样本越大越准确(默认值3)
- LRU(最近最少使用)和最小TTL(最接近过期时间)都并非准确的,例如一个数据10年都没用过但是10年后才过期,一个数据经常使用但明天过期时,类似于这种情况时就不大准确了
- 一般设置3到7的数字,数值越小越不准确,但是性能消耗也越小