🌈 个人主页: Hygge_Code
💫 个人格言: “既然选择了远方,便不顾风雨兼程”

在这里插入图片描述

Redis配置文件 redis.conf 详解🧾


学术会议 + 论文投稿

2026机器学习与大模型国际学术会议官网: 参会 / 论文投稿

在这里插入图片描述

在这里插入图片描述

征稿主题: 参会 / 论文投稿

在这里插入图片描述


数据单位配置 🥝

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

在这里插入图片描述

INCLUDES配置 🥝

我们可以把一些配置信息定义在子配置文件里面,再在redis.conf中引入进来

在这里插入图片描述

网络相关配置 🥝

bind

默认情况bind=127.0.0.1只能接受本机的访问请求。不写的情况下,无限制接受任何ip地址的访问。

生产环境肯定要写你应用服务器的地址,服务器是需要远程访问的,所以需要将其注释掉。

在这里插入图片描述

protected-mode

如果开启了protected-mode,那么在没有设定bind ip且没有设密码的情况下,Redis只允许接受本机的响应。
将本机访问保护模式设置no。这样其他机器就可以远程连接redis。

在这里插入图片描述

port

Redis的默认端口号:6379

在这里插入图片描述

tcp-backlog

设置tcp的backlog,backlog其实是一个连接队列,backlog队列总和=未完成三次握手队列 + 已经完成三次握手队列

在高并发环境下你需要一个高backlog值来避免慢客户端连接问题。
注意Linux内核会将这个值减小到/proc/sys/net/core/somaxconn的值(128),所以需要确认增
大/proc/sys/net/core/somaxconn和/proc/sys/net/ipv4/tcp_max_syn_backlog(128)两个值来达到
想要的效果。

在这里插入图片描述

timeout

一个空闲的客户端维持多少秒会关闭,0表示关闭该功能。即永不关闭。

在这里插入图片描述

tcp-keepalive

对访问客户端的一种心跳检测,每隔n秒检测一次。
单位为秒,如果设置为0,则不会进行Keepalive检测,默认值为300

在这里插入图片描述

GENERAL通用配置 🥝

daemonize

是否为后台进程,设置为yes,守护进程,后台启动

在这里插入图片描述

pidfile

存放pid文件的位置,每个实例会产生一个不同的pid文件

在这里插入图片描述

loglevel

指定日志记录级别,Redis总共支持四个级别:debug、verbose、notice、warning,默认为notice

在这里插入图片描述

logfile

日志文件的名称

在这里插入图片描述

databases

设定库的数量 默认16,默认数据库为0,可以使用 SELECT < dbid > 命令在连接上指定数据库id

在这里插入图片描述

SECURITY安全配置 🍂

设置密码

在这里插入图片描述

LIMITS配置 🐦‍🔥

maxclients

 1. maxclients:设置redis同时可以与多少个客户端进行连接。 默认情况下为10000个客户端。
 2. 如果达到了此限制,redis则会拒绝新的连接请求,并且向这些连接请求方发出 “max number of clients reached” 以作回应。

在这里插入图片描述

maxmemory

 1. 建议必须设置,否则,将内存占满,造成服务器宕机。
 2. 设置redis可以使用的内存量。一旦到达内存使用上限,redis将会试图移除内部数据,移除规则可以通过maxmemory-policy来指定。
 3. 如果redis无法根据移除规则来移除内存中的数据,或者设置了“不允许移除”,那么redis则会针对那些需要申请内存的指令返回错误信息,比如SET、LPUSH等。
 4. 但是对于无内存申请的指令,仍然会正常响应,比如GET等。如果你的redis是主redis(说明你的redis有从redis),那么在设置内存使用上限时,需要在系统中留出一些内存空间给同步队列缓存,只有在你设置的是“不移除”的情况下,才不用考虑这个因素。

在这里插入图片描述

maxmemory-policy

  • volatile-lru:使用LRU算法移除key,只对设置了过期时间的键
  • allkeys-lru:在所有集合key中,使用LRU算法移除key
  • volatile-random:只会从设置了过期时间的键里,随机挑一个删掉
  • allkeys-random:在所有集合key中,移除随机的key
  • volatile-ttl:移除那些TTL值最小的key,即那些最近要过期的key
  • noeviction:不进行移除。针对写操作,只是返回错误信息

在这里插入图片描述


如果我的内容对你有帮助,请 点赞 评论 收藏 。创作不易,大家的支持就是我坚持下去的动力!
在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐