远程字典服务 — Redis 札记(十六:Redis配置文件解读)

核心:在Linux下面开发,配置大于编码

在Linux中启动redis时,通过配置文件来启动,所以我们有必要去了解一下redis 的配置文件参数内容

一、Units 单位

在这里插入图片描述

可以看到 redis 此处在配置大小单位,开头定义了一些基本的度量单位,只支持 bytes, 不支持 bit,并且结尾也说了redis 对大小写并不敏感

二、Includes 包含

在这里插入图片描述

和我们之前学的JSP 一样,类似那种主文件包含子文件的意思,此时 redis.conf 作为总闸,包含其他配置文件

三、MODULES 模块(了解即可)

在这里插入图片描述

在启动时加载模块。如果服务器无法加载模块
它将中止。可以使用多个loadmodule指令

四、Network 网络(重要)

在这里插入图片描述
在这里插入图片描述

IP地址的绑定(bind)

默认情况 bind = 127.0.0.1 只能接受本机的访问请求
不写的情况下,无限制接受任何 IP地址的访问,也可以写接受你本地的IP地址(只能接受你本地的访问)
如果在生产环境下 肯定要写你应用服务器的地址
另外如果开启了 protected-mode 。那么在没有设定bing IP 且没有设置密码的情况下,Redis 只允许接受本机的响应

在这里插入图片描述

tcp-backlog(连接队列)

可以理解是一个请求到达 后 直到 接受进程处理前的队列
backlog 队列总和 = 未完成三次握手队列+ 已经完成三次握手队列
在高并发环境下 你需要设置一个 高backlog值来避免客户端连接问题。
注意 Linux 内核会将这个值减小到 /proc/sys/net/core/somaxconn 的值,所以需要确认增大 somaxconntcp_max_syn_backlog 两个值 来达到想要的效果
高并发环境 设置 tcp-backlog 的值由 超时时限内 的 Reids 吞吐量决定

timeout

一个空闲的客户端维持多少秒会关闭,0 为 永不关闭

tcp keepalive

对访问客户端的一种心跳检测,每隔 n 秒 检测一次
官方推荐设置为 60 秒 , 如果设置为 0 ,则不会进行 keepalive的检测 !

五、TLS/SSL (了解即可)

Redis 遵循的安全协议,默认情况下,TLS/SSL处于禁用状态
在这里插入图片描述

六、 GENERAL (通用)

在这里插入图片描述

daemnize

是否为后台进程(守护进程),默认为 no ,我们需要自己开启为 yes

pidfile

存放 pid 文件的位置,如果以后台的方式运行,我们就需要指定一个 pid 文件,每一个实例都会产生一个不同的 pid 文件 , pid 即为 进程号。

在这里插入图片描述

loglevel notice 日志级别通知

在这里插入图片描述

四个级别根据使用阶段来选择,生产环境选择 notice 或者 warning

四个级别,从上到下,级别越来越高,级别越高,日志信息越少(越重要),级别越低的,日志信息越多,级别低的 包含级别高的日志信息
在这里插入图片描述

七、SNAPSHOTTING (快照)

Save the DB to disk. 也就是将数据库保存到磁盘
在这里插入图片描述

上述的 save 命令

在规定的时间内,进行了多少次操作,则会持久化到文件 (.rdb文件 或 .aof文件)
因为 Redis 是内存数据库,如果没有进行持久化,则数据是断电即失的 !

例如:save 3600 1 意思为:如果在3600秒内,至少有一个key进行了修改,则会进行持久化操作

在这里插入图片描述
在这里插入图片描述

八、REPLICATION (复制) 了解即可

主要说明 Redis 中关于复制副本的参数以及实现

九、KEYS TRACKING (key 跟踪)了解即可

Redis实现了对客户端缓存值的服务器辅助支持。

这是使用一个失效表实现的,该表使用 一个基数键,按键名、客户端拥有哪些键进行索引
在这里插入图片描述
跟踪表最大密钥数1000000

十、SECURITY 安全(重要)

redis 服务的密码 分为 临时密码永久密码
临时密码 就是在命令行中设置的密码,指令中的内容只在内存中有效

临时密码demo

在这里插入图片描述

永久密码 设置

在这里插入图片描述

十一、CLIENTS 客户

在这里插入图片描述

十二、MEMORY MANAGEMENT 内存管理

在这里插入图片描述

maxmemory

设置 Redis 可以使用的内存量,一旦到达内存使用上限
Redis 将会试图移除内部数据,移除规则可以通过 maxmemory-policy 来指定。
如果Redis无法根据移除规则来移除内存中的数据,或者设置了 不允许移除 ,那么Redis则会针对那些需要申请内存的指令返回错误信息,比如 SETLPUSH 等。

在这里插入图片描述

maxmemory-policy

内存到达上限之后的处理策略

1. volatile-lru:使用LRU(最近最少使用)算法移除 key 只对设置了过期时间的 key (默认值)
2. allkeys-lru:删除LRU算法的key
3. volatile-random:随机删除即将过期的key
4. allkeys-random:随机删除
5. volatile-ttl:删除即将过期的key
6. noeviction:永不过期,不进行移除,针对写操作,只是返回错误

maxmemory-samples

在这里插入图片描述
设置样本数量,LRU 算法和 最小TTL算法都并非是精确的算法,而是估算值,所以你可以设置样本的大小。
一般设置3 至 7 的数字,数值越小样本越不准确,但是性能消耗也越小。
一般设置 3、4、5 ,数字太大的话,性能消耗也大!

十三、APPEND ONLY MODE 附加模式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值