Redis之----详细分析Redis.conf配置文件

文章目录

      • 简介
      • 1.units(单位)
      • 2.include(包含)
      • 3.network(网络)
      • 4.general(通用配置)
      • 5.snapshotting(快照)
      • 6.replication(复制)
      • 7.secrulity(安全)
      • 8.client(客户端)
      • 9.append only mode(aof配置)

简介

Redis在启动的时候是通过配置文件Redis.conf进行启动的,那么我们了解Redis.conf文件对我们之后对于Redis的操作就非常有帮助,下面我们就来看看这个配置文件都有一些什么东西。
首先我们进入这个目录,找到这个配置文件开启编辑模式进行查看,我这边使用的是阿里巴巴的服务器:
Redis之----详细分析Redis.conf配置文件_第1张图片

1.units(单位)

进入编辑模式之后,我们翻到这个文件的最上面,我们翻译这段英文发现Redis配置文件中的单位对大小写不敏感。
Redis之----详细分析Redis.conf配置文件_第2张图片

2.include(包含)

我们继续往下面翻发现可以包含多个文件,其实就是我们的Java中import包一样的,导入一些包在文件中。
Redis之----详细分析Redis.conf配置文件_第3张图片

3.network(网络)

Redis之----详细分析Redis.conf配置文件_第4张图片
bind 127.0.0.1 -::1
表示Redis启动时开放的端口默认与本机绑定
protected-mode yes
是否开启保护模式,Redis默认开启,如果没有设置bind的IP地址和Redis密码,那么服务就会默认只能在本机运行
port 6379
Redis指定监听端口,默认为6379
timeout 300
表示服务器闲置多长时间(秒)后被关闭,如果这个这个数值为0,表示这个功能不起作用

4.general(通用配置)

Redis之----详细分析Redis.conf配置文件_第5张图片
Redis之----详细分析Redis.conf配置文件_第6张图片
daemonize yes
是否以守护进程的方式运行,即后台运行,一般默认为no,需要手动改为yes
pidfile /var/run/redis_6379.pid
如果以守护进程的方式运行,就需要指定一个pid文件,在Redis启动时创建,退出时删除
loglevel notice
配置日志等级,日志等级的可选项如下:
debug:打印的信息较多,在工作中主要用于开发和测试
verbose:打印的信息仅次于debug,但是格式较为工整
notice:Redis默认配置,在生产环境中使用
warning:只打印一些重要信息,比如警告和错误
logfile " "
打印的日志文件名称,如果为空,表示标准输出,在配置守护进程的模式下会将输出信息保存到/dev/null
databases 16
数据库支持数量,16个

5.snapshotting(快照)

Redis之----详细分析Redis.conf配置文件_第7张图片

如果在规定的时间内,数据发生了几次更新,那么就会将数据同步备份到一个文件中
Redis的持久化有两种方式,一种是RDB,一种是AOF。SNAPSHOTTING主要针对的是Redis持久化中的RDB
Redis是一个内存数据库,如果不采用持久化对数据进行保存,那么就会出现断电即失的尴尬场面

# 在3600秒内,至少有1个key被修改(添加),就会进行持久化操作
save 3600 1
# 在300秒内,至少有100个key被修改,就会进行持久化操作
save 300 100
# 在60秒内,至少有1万个key被修改,就会进行持久化操作
save 60 10000

Redis之----详细分析Redis.conf配置文件_第8张图片
Redis之----详细分析Redis.conf配置文件_第9张图片

top-writes-on-bgsave-error yes
如果Redis在进行持久化的时候出现错误,是否停止写入,默认为是
rdbcompression yes
是否在进行数据备份时压缩持久化文件,默认为是,这个操作会耗费CPU资源,可以设置为no
rdbchecksum yes
在保存持久化文件的同时,对文件内容进行数据校验
dir ./
持久化文件保存的目录,默认保存在当前目录下

6.replication(复制)

Redis之----详细分析Redis.conf配置文件_第10张图片

replicaof <masterip> <masterport>
复制主机上的数据,当前配置所指定的IP和端口号即为主机
Redis在配置文件中将此配置注释,默认不使用,下同
masterauth <master-password>
如果配置的主机有密码,需要配置此密码以通过master的验证

7.secrulity(安全)

Redis之----详细分析Redis.conf配置文件_第11张图片
可以在配置文件中设置Redis的登录密码
Redis之----详细分析Redis.conf配置文件_第12张图片

8.client(客户端)

Redis之----详细分析Redis.conf配置文件_第13张图片
Redis之----详细分析Redis.conf配置文件_第14张图片
Redis之----详细分析Redis.conf配置文件_第15张图片

maxclients 10000
Redis允许存在的客户端的最大数量,默认有一万个
maxmemory <bytes>
Redis配置最大的内存容量
maxmemory-policy noeviction
内存达到上限之后默认的处理策略

Redis之----详细分析Redis.conf配置文件_第16张图片

处理策略有以下几种
noeviction:默认策略,不淘汰,如果内存已满,添加数据是报错。
allkeys-lru:在所有键中,选取最近最少使用的数据抛弃。
volatile-lru:在设置了过期时间的所有键中,选取最近最少使用的数据抛弃。
allkeys-random: 在所有键中,随机抛弃。
volatile-random: 在设置了过期时间的所有键,随机抛弃。
volatile-ttl:在设置了过期时间的所有键,抛弃存活时间最短的数据

9.append only mode(aof配置)

Redis之----详细分析Redis.conf配置文件_第17张图片
Redis之----详细分析Redis.conf配置文件_第18张图片

appendonly no
这是Redis持久化的另一种方式,AOF,AOF模式默认不开启,Redis默认开启的是持久化模式是RDB,在大部分情况下,RDB的模式完全够用
appendfilename "appendonly.aof"
AOF持久化的文件名称
appendfsync
appendfsync always
表示每次修改都会进行数据同步,速度较慢,消耗性能
appendfsync no
不执行同步,不消耗性能,这时候操作系统自己同步数据,速度最快
appendfsync everysec
数据不同步,每秒记录一次,每秒执行一次同步,但是可能会丢失这一秒的数据

你可能感兴趣的:(Java,redis,redis,缓存,数据库)