redis.conf
1. 配置文件
unit单位对大小写不敏感
2. 网络
bind 127.0.0.1 #绑定ip
protected mode = yes #保护模式
port = 6379 #端口
3. 通用 General
#以后台进程的方式运行,默认是no。即退出redis后,进程结束。一般需要设置为yes
daemon no
#如果以后台方式运行,需要指定一个pid文件
pidfile /var/run/redis/redis-server.pid
# Specify the server verbosity level.
# This can be one of:
# 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)
loglevel notice #日志级别
logfile /var/log/redis/redis-server.log #日志输出文件名
databse 16 #数据库的数量,默认16
always-show-logo yes #是否总是显示logo
4. 快照 Snapping
持久化 在规定的时间内执行了多少次操作,则会持久化到文件 .rdb .aof
redis是内存数据,如果没有持久化,那么数据断电即失
save 900 1 #如果900s内,至少修改了1个key,就执行持久化操作
save 300 10 #如果300s内,至少修改了10个key,就执行持久化操作
save 60 10000 #如果60s内,至少修改了10000个key,就执行持久化操作
stop-writes-on-bgsave-error yes #持久化出错,是否继续工作
rdbcompression yes #是否压缩rdb文件 需要消耗cpu资源
rdbchecksum yes #保存rdb文件时,执行错误校验
dbfilename dump.rdb #保存rdb文件的文件名
dir /var/lib/redis #存放rdb文件的目录
5. 复制 REPLICATION
主从复制模块
6. 安全 SECURITY
设置redis密码,默认没有密码
7. 客户端 CLIENT
```
maxclients 10000 # 能够连接redis的最大客户端数量为10000
```
8. 内存管理 MEMORY MANAGEMENT
maxmemory <bytes> # redis最大内存容量
maxmemory-policy noeviction #内存达到上限后的处理策略
#可以移除一些过期的key,或者报错
1、volatile-lru:只对设置了过期时间的key进行LRU(默认值)
2、allkeys-lru : 删除lru算法的key
3、volatile-random:随机删除即将过期key
4、allkeys-random:随机删除
5、volatile-ttl : 删除即将过期的
6、noeviction : 永不过期,返回错误
9. AOF模式 APPEND ONLY MODE
appendonly no #aof模式默认不开启,大部分情况下使用rdb
appendfilename "appendonly.aof" #aof持久化的文件名
# appendfsync always 每次修改都会sync, 消耗性能
appendfsync everysec #每秒执行移除sync, 可能会丢失这一秒的数据
# appendfsync no #不执行sync