Redis配置文件详解

Redis.conf详解

启动的时候,就是通过配置文件来启动的!

单位

单位

Redis配置文件详解

1、配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit

2、对大小写 不敏感

INCLUDES 包含

INCLUDES 包含

Redis配置文件详解

和Spring配置文件类似,可以通过includes包含,redis.conf 可以作为总文件,可以包含其他文件!

NETWORK 网络配置

NETWORK 网络配置

bind 127.0.0.1 # 绑定的ip
protected-mode yes # 保护模式
port 6379 # 默认端口

Redis配置文件详解

GENERAL 通用

GENERAL 通用

daemonize yes # 默认情况下,Redis不作为守护进程运行。需要开启的话,改为 yes(开启就以后台的方式允许)
supervised no # 可通过upstart和systemd管理Redis守护进程
pidfile /var/run/redis_6379.pid # 以后台进程方式运行redis,则需要指定pid 文件
loglevel notice # 日志级别。可选项有:
				# debug(记录大量日志信息,适用于开发、测试阶段);
				# verbose(较多日志信息);
				# notice(适量日志信息,使用于生产环境);
				# warning(仅有部分重要、关键信息才会被记录)。
logfile "" # 日志文件的位置,当指定为空字符串时,为标准输出
databases 16 # 设置数据库的数目。默认的数据库是DB 0
always-show-logo yes # 是否总是显示logo

SNAPSHOPTING 快照

SNAPSHOPTING 快照

后面做持久化的时候会用到!

在规定的时间内,有多少个key值变化,才会持久化到文件 .rdb文件或者.aof文件!

redis是内存数据库,如果没有持久化,那么数据断电即失,所以需要持久化的机制!

# 900秒(15分钟)内至少1个key值改变(则进行数据库保存--持久化)
save 900 1
# 300秒(5分钟)内至少10个key值改变(则进行数据库保存--持久化)
save 300 10
# 60秒(1分钟)内至少10000个key值改变(则进行数据库保存--持久化)
save 60 10000
stop-writes-on-bgsave-error yes # 持久化出现错误后,是否依然进行继续进行工作
rdbcompression yes # 是否压缩rdb文件 yes:压缩,但是需要一些cpu的消耗。no:不压缩,需要更多的磁盘空间
rdbchecksum yes # 保存rdb文件的时候,是否进行错误的rdb文件检查校验,更有利于文件的容错性,但是在保存rdb文件的时候,会有大概10%的性能损耗
dbfilename dump.rdb # dbfilenamerdb文件名称
dir ./ # dir 数据目录,数据库的写入会在这个目录。rdb、aof文件也会写在这个目录

REPLICATION 复制

REPLICATION 复制 我们后面讲主从复制再给大家讲解!这里先跳过!

SECURITY安全

SECURITY安全

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

我们可以使用命令的方式设置密码:

# 启动redis
# 连接客户端
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> config get requirepass # 获取redis的密码,发现为空!
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass "123456" # 设置redis的密码
OK
127.0.0.1:6379> config get requirepass # 发现所有的命令都没有权限了
(error) NOAUTH Authentication required.
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth 123456  # 使用密码登录即可
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"

也可以直接在配置文件里面设置密码:

Redis配置文件详解

CLIENTS 客户端限制

CLIENTS 客户端限制

maxclients 10000 # 设置能连上redis的最大客户端连接数量
maxmemory <bytes> # redis配置的最大内存容量
maxmemory-policy noeviction # maxmemory-policy 内存达到上限的处理策略
							#volatile-lru:利用LRU算法移除设置过过期时间的key。
                            #volatile-random:随机移除设置过过期时间的key。
                            #volatile-ttl:移除即将过期的key,根据最近过期时间来删除(辅以TTL)
                            #allkeys-lru:利用LRU算法移除任何key。
                            #allkeys-random:随机移除任何key。
                            #noeviction:不移除任何key,只是返回一个写错误。

append only模式 AOF配置

append only模式 AOF配置

appendonly no # 是否以append only模式作为持久化方式,默认使用的是rdb方式持久化,这种方式在许多应用中已经足够用了
appendfilename "appendonly.aof" # AOF 持久化文件名称
appendfsync everysec # appendfsync aof持久化策略的配置
					 # no表示不执行fsync,由操作系统保证数据同步到磁盘,速度最快。
                     # always表示每次写入都执行fsync,以保证数据同步到磁盘。
                     # everysec表示每秒执行一次fsync,可能会导致丢失这1秒的数据。
上一篇:查询商户的门店编号列表(alipay.offline.market.shop.batchquery)获取shop_id


下一篇:重构——4以查询取代临时变量(Replace Temp with Query)