hooyantsing's Blog

27_Redis配置文件详解

字数统计: 748阅读时长: 3 min
2020/08/18

27 Redis配置文件详解

Redis最新超详细版教程通俗易懂

网络

1
2
3
bind 127.0.0.1  # 绑定的IP,允许访问的IP。设置为 * 允许所有计算机访问。
protected-mode yes # 保护模式
port 6379 # 端口号

GENERAL 通用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
daemonize yes  # 以守护进程的方式运行,默认是no,需要自己改为yes。否则退出,Redis就关了。
pidfile /var/run/redis_6379.pid # 如果以后台的方式运行,我们需要指定一个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 "" # 日志文件位置
databases 16 # 数据库的数量,默认是16个数据库
always-show-loge yes # 是否总是显示LOGO

SNAPSHOTTING 快照

持久化,在规定的时间内,执行了多少次操作,则会持久化到文件 .rdb .aof。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 如果 900s 内至少有1个key发生了修改,就持久化操作。
save 900 1
# 如果 300 内至少有10个key发生了修改,就持久化操作。
save 300 10
# 如果 60 内至少有10000个key发生了修改,就持久化操作。
save 60 10000

stop-writes-on-bgsave-error yes # 持久化发生错误后是否还继续工作

rdbcompression yes # 是否压缩 rdb 文件,需要消耗cpu资源

rdbchecksum yes # 保存 rdb 文件的时候,进行错误的检查校验

dir ./ # rdb 文件保存的目录,默认当前目录下

REPLICATION 复制

具体配置在 主从复制 中详解。

SECURITY 安全

可以在这里设置 redis 密码,默认是没有密码的。

1
requirepass 123456

如果设置了密码,将使用以下命令认证。

1
auth 123456

LIMITS 限制

1
2
3
4
5
maxclients 10000  # 限制连接数

maxmemory <bytes> # 最大内存上限值,单位字节

maxmemory-policy noeviction # 如果内存满了,该怎么做策略

maxmemory-policy:

  • noeviction: 不删除策略, 达到最大内存限制时, 如果需要更多内存, 直接返回错误信息。(默认值)
  • allkeys-lru: 所有key通用; 优先删除最近最少使用(less recently used ,LRU) 的 key。
  • volatile-lru: 只限于设置了 expire 的部分; 优先删除最近最少使用(less recently used ,LRU) 的 key。
  • allkeys-random: 所有key通用; 随机删除一部分 key。
  • volatile-random: 只限于设置了 expire 的部分; 随机删除一部分 key。
  • volatile-ttl: 只限于设置了 expire 的部分; 优先删除剩余时间(time to live,TTL) 短的key。

    APPEND ONLY MODE AOF模式配置

1
2
3
4
5
6
7
appendonly no  # 默认是不开启 aof 模式的,默认使用的是 rdb 方式持久化,在大部分情况下,rdb完全够用。

appendfilename "appendonly.aof" # 持久化的文件名

# appendfsync always # 每次修改都会 sync,消耗性能
appendfsync everysec # 每秒执行一次 sync,可能会丢失1s的数据
# appendfsync no # 不执行sync,这个时候操作系统自己同步数据,速度最快。

具体配置在 Redis持久化 中详解。

CATALOG
  1. 1. 27 Redis配置文件详解