daemonize
=========
是否以守护进程的方式运行,默认是 no,我们需要的话可以修改成 yes
pidfile
=======
以后台方式运行 redis ,我们就需要制定一个 pid 文件
loglevel
========
日志等级
291 # Specify the server verbosity level.
292 # This can be one of:
293 # debug (a lot of information, useful for development/testing)
294 # verbose (many rarely useful info, but not a mess like the debug level)
295 # notice (moderately verbose, what you want in production probably)
296 # warning (only very important / critical messages are logged)
复制代码
和我们项目中用到的一致:
用于开发和测试的调试信息
罕见有用的信息
提示信息,期望在生产环境中看到的
告警信息,重要的信息会被打印到日志中
logfile
=======
指定 redis 日志文件路径
databases
=========
redis 数据库, 默认是 16 个
always-show-logo
================
是否总是显示 reids logo ,就是下面这个 logo
.
.-``_ ‘’-._
.-`` .
. ‘’-._ Redis 6.2.5 (00000000/0) 64 bit
( ’ , .-|
, ) Running in standalone mode
|-._
-…-__...-.``-._|'
_.-’| Port: 6379
| -._
._ / _.-’ | PID: 29303
-._
-._ `-./ _.-’ _.-’
|-._
-._ `-.__.-’ .-’.-’|
| -._
-._ .-’.-’ | https://redis.io
-._
-.`-.__.-’.-’ _.-’
|-._
-._ `-.__.-’ .-’.-’|
| -._
-._ .-’.-’ |
-._
-.`-.__.-’.-’ _.-’
-._
-.__.-’ _.-’
`-._ _.-’
`-.__.-’
复制代码
SNAPSHOTTING 快照
===============
快照,这里也就是 redis 的持久化,在规定的时间里面,执行了多少次操作,就会持久化到文件中
redis 的持久化有两种
=============
RDB
AOF
redis 是内存数据库,程序宕机或者断电都会导致数据丢失,因此 redis 就有这样的持久化策略
复制代码
如果 3600 s 内 redis 发生了 1 次操作, 那么就会做数据持久化
如果 300s 内 redis 发生了 100 次操作, 那么就会做数据持久化
如果 60s 内 redis 发生了 10000 次操作, 那么就会做数据持久化
后面咱们详细写到持久化的时候,再来细说和实际测试持久化的事情
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dir ./
复制代码
stop-writes-on-bgsave-error
===========================
redis 持久化出错是否继续执行 redis 程序,默认是打开的,持久化错误不能影响 redis 程序的执行,需要正常进行下去
rdbcompression
==============
持久化的文件是否需要压缩,默认是开启的,这个功能会比较消耗性能
rdbchecksum
===========
保存 rdb 持久化文件的时候,会进行错误检查校验
dir
===
rdb 文件的保存目录
REPLICATION 主从复制
================
主从复制的配置在这个位置
详细的后续写到主动复制的时候详细的写
SECURITY 安全
===========
redis 的安全相关配置文件,咱们来看看密码的事情
复制代码
redis 默认是不设置密码的,但是我们为了远程访问安全,必须要设置密码
127.0.0.1:63
《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》
【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享
79> ping
PONG
127.0.0.1:6379> config get requirepass
“requirepass”
“”
127.0.0.1:6379> config set requirepass 888888
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> config get requirepass
“requirepass”
“888888”
退出 redis 客户端,再次连接 redis-server
root@iZuf66y3tuzn4wp3h02t7pZ:~# redis-cli
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
复制代码
对 redis 设置了密码之后,退出 redis 客户端,再次连接 redis-server,发现 redis 报错权限不足,此时我们使用 redis-client 连接 redis-server 就需要密码了
127.0.0.1:6379> auth 888888
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> config get requirepass
“requirepass”
“888888”
复制代码
CLIENTS 客户端
===========
限制客户端连接数
maxclients 10000
复制代码
maxclients
==========
redis 限制客户端连接数 默认是 10000 个,这个数字我们也可以修改成我们所期望的
MEMORY MANAGEMENT 内存管理
======================
maxmemory
maxmemory-policy noeviction
复制代码
maxmemoryredis 配置的最大内存容量,单位是字节
maxmemory-policy
================
redis 内存达到上限之后的处理策略是什么样的,有如下几个选型:
永不过期,返回错误
删除即将过期的
随机删除 key
随机删除即将过期的 key
删除 lru 算法的 key
只对设置了过期时间的 key 进行 LRU
LRU(Least recently used,最近最少使用)