当前位置: 首页 > news >正文

一文读懂Redis配置,史上真香配置

文章目录

  • 基本配置项
  • AOF持久化配置项
  • RDB持久化配置项
  • 淘汰策略配置项
  • 主从复制配置项
  • 鸣谢

让那些总为redis连接异常的小白指引明灯,少走弯路。为那些不知道如何进行高级配置的大佬整一杯小酒。

基本配置项

  1. bind:用于设置Redis绑定的IP地址。默认情况下,Redis监听所有可用的接口,如果需要指定IP地址,可以使用此配置项进行设置。默认开启,连接不上的原因之一,未注释掉只能进行本地连接,不能使用工具和远程连接

  2. port:用于设置Redis监听的端口号。默认端口为6379。连接不上的可能原因之一,端口号被改掉了。当然防火墙也是重点连接不上的原因(腾讯、阿里、宝塔。。。),记得开放端口哦,要不然连不上

  3. timeout:用于设置Redis客户端连接的超时时间。如果客户端在指定的时间内没有与Redis建立连接,则会被关闭连接。

  4. maxclients:用于限制同时连接到Redis的客户端数量。当客户端数量达到限制时,Redis将不再接受新的连接。

  5. loglevel:用于设置Redis的日志级别。可以根据需要进行设置,例如设置为debug、info、notice、warning等不同的级别。

  6. logfile:用于设置Redis日志文件的路径。默认情况下,Redis会将日志输出到标准输出。

  7. databases:用于设置Redis数据库的数量以及各自的名称。默认情况下,只有一个数据库,其名称为“db0”。默认16,db分区数量。代码不配置默认连接的是db0

  8. requirepass:用于设置Redis的身份验证密码。默认无密码,这也是连接不上的原因之一,密码验证被开启了。

  9. notify-keyspace-events Ex :key过期监听启用配置项

AOF持久化配置项

Redis的AOF(Append-Only File)持久化机制是通过记录所有对Redis数据库的写操作来达到持久化的目的。当Redis服务器重启时,会通过重新执行AOF文件中的命令来恢复数据。

  1. appendonly:用于开启或关闭AOF持久化。如果设置为"yes",则开启AOF持久化;如果设置为"no",则关闭AOF持久化。
  2. appendfilename:用于设置AOF文件的名称。默认值为"appendonly.aof"。
  3. appendfsync:用于设置AOF文件的同步策略。可以选择"always"、“everysec"或"no”。always表示每次写入都同步,everysec表示每秒同步一次,no表示由操作系统决定何时同步。默认值为"everysec"。
  4. auto-aof-rewrite-percentage:用于设置自动AOF重写的阈值。当AOF文件的扩展比例超过该值时,Redis会自动执行重写操作。默认值为100,表示当AOF文件的大小是上一次重写后大小的一倍时触发重写。
  5. auto-aof-rewrite-min-size:用于设置自动AOF重写的最小大小。只有在AOF文件的大小大于该值时,才会执行重写操作。默认值为64MB。
  6. no-appendfsync-on-rewrite:用于设置在执行AOF文件重写时是否禁用同步。如果设置为"yes",则在进行重写时不会进行同步操作。默认值为"yes"。
  7. aof-load-truncated:用于设置在加载AOF文件时是否允许Redis忽略出现错误的命令。如果设置为"yes",则忽略错误;如果设置为"no",则不允许加载出现错误的AOF文件。默认值为"yes"。
  8. aof-use-rdb-preamble:用于设置AOF文件的开头是否包含RDB格式的部分。如果设置为"yes",则在AOF文件的开头会先保存一份RDB格式的数据,这有助于加速数据加载。默认值为"no"。

RDB持久化配置项

Redis的RDB(Remote Dictionary Base)持久化机制是通过将Redis数据库的某个时间点的状态以二进制格式保存到磁盘上的方式来实现持久化。当Redis服务器需要恢复数据时,可以通过加载RDB文件来恢复数据。

  1. save:用于设置RDB持久化的时间间隔和条件。可以设置不同的时间间隔和条件组合,例如"save 900 1"表示每900秒内有至少1个写操作就保存一次RDB文件;"save 300 10"表示每300秒内有至少10个写操作就保存一次RDB文件。
  2. bgsave:用于设置以后台方式执行RDB持久化。如果设置为"yes",则以后台方式执行RDB持久化,不会阻塞主线程。
  3. rdbcompression:用于设置RDB文件是否使用压缩。如果设置为"yes",则使用LZF算法进行压缩。
  4. rdbchecksum:用于设置RDB文件是否使用校验和。如果设置为"yes",则添加校验和到RDB文件中。
  5. dbfilename:用于设置RDB文件的名称。
  6. dir:用于设置RDB文件的存储目录。

淘汰策略配置项

Redis提供了多种淘汰策略配置项,用于配置在内存不足时如何淘汰掉不需要的数据。

  1. maxmemory-policy:用于设置Redis的最大内存使用策略。可以选择不同的策略,例如"noeviction"、“lru”、“allkeys-lru”、“volatile-lru”、“allkeys-random”、“volatile-random"或"volatile-ttl”。
  2. volatile-ttl:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键。如果设置为"yes",则只会淘汰带有过期时间的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
  3. volatile-lru:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键并使用LRU算法。如果设置为"yes",则只会淘汰带有过期时间的键并使用LRU算法;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
  4. volatile-random:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键并随机选择要淘汰的键。如果设置为"yes",则只会淘汰带有过期时间的键并随机选择要淘汰的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
  5. allkeys-lru:用于设置Redis在淘汰数据时,是否使用LRU算法淘汰所有的键。如果设置为"yes",则使用LRU算法淘汰所有的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
  6. allkeys-random:用于设置Redis在淘汰数据时,是否随机选择要淘汰的键。如果设置为"yes",则随机选择要淘汰的键;如果设置为"no",则不会淘汰任何键。
  7. noeviction:用于设置Redis在内存不足时禁止淘汰任何键。如果设置为"yes",则禁止淘汰任何键;如果设置为"no",则根据上述策略进行淘汰。

主从复制配置项

Redis支持主从复制,可以实现数据的高可用性和读写分离。=

  1. replication-role:用于设置Redis节点的角色。如果节点是主节点,则设置为"master";如果节点是从节点,则设置为"slave"。
  2. master-host:用于设置主节点的IP地址。
  3. master-port:用于设置主节点的端口号。
  4. master-auth-password:用于设置主节点的身份验证密码。
  5. slave-announce:用于设置是否宣告从节点。如果设置为"yes",则宣告从节点;如果设置为"no",则不宣告从节点。
  6. slave-read-only:用于设置从节点是否只读。如果设置为"yes",则从节点只读;如果设置为"no",则从节点可写。
  7. slave-priority:用于设置从节点的优先级。优先级越高的从节点越有可能被选为主节点。
  8. replica-read-only:用于设置从节点是否只读。如果设置为"yes",则从节点只读;如果设置为"no",则从节点可写。这个配置项比slave-read-only更具体,优先级更高。
  9. replica-priority:用于设置从节点的优先级。优先级越高的从节点越有可能被选为主节点。
  10. replica-announce:用于设置是否宣告从节点。如果设置为"yes",则宣告从节点;如果设置为"no",则不宣告从节点。这个配置项比slave-announce更具体,优先级更高。

鸣谢

  • 非常感谢你从头到尾阅读了这篇文章,希望其中的内容对你有所启发和帮助。如果你还有其他问题或需要进一步的了解,欢迎随时关注我的动态并留言
  • 最后可以给作者点个关注和小赞赞嘛,谢谢!
  • 觉得有收藏价值可以进行收藏

相关文章:

一文读懂Redis配置,史上真香配置

文章目录 基本配置项AOF持久化配置项RDB持久化配置项淘汰策略配置项主从复制配置项鸣谢 让那些总为redis连接异常的小白指引明灯,少走弯路。为那些不知道如何进行高级配置的大佬整一杯小酒。 基本配置项 bind:用于设置Redis绑定的IP地址。默认情况下&…...

maven打出jar中动态替换占位符

使用场景&#xff1a; maven打出的jar中pom.xml动态替换占位符 有些时候某些公共工具jar包被项目引用后发现公共jar的pom.xml中的version依然还是占位符&#xff0c;例如下面 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok<…...

【Git游戏】通过游戏重新学习Git

在提交树上移动 HEAD HEAD:一个标志符号&#xff08;通常情况下指向当前分支&#xff0c;间接指向当前最新的提交记录&#xff09; 可以通过git checkout commitID从而指向提交记录 commitID 本身是一串哈希值&#xff08;基于 SHA-1&#xff0c;共 40 位&#xff09; 我们在…...

如何通过以太坊JSON-RPC方式获取ERC-20代币的信息?

目录 一、ERC-20介绍 二、ERC-20代币标准功能 1、可选功能 2、标准功能 三、获取代币信息...

线性代数的学习和整理4: 求逆矩阵的多种方法汇总

目录 原始问题&#xff1a;如何求逆矩阵&#xff1f; 1 EXCEL里&#xff0c;直接可以用黑盒表内公式 minverse() 数组公式求A- 2 非线性代数方法&#xff1a;解方程组的方法 3 增广矩阵的方法 4 用行列式的方法计算&#xff08;未验证&#xff09; 5 A-1/|A|*A* &…...

【C#学习笔记】匿名函数和lambda表达式

文章目录 匿名函数匿名函数的定义匿名函数作为参数传递匿名函数的缺点 lambda表达式什么是lambda表达式闭包 匿名函数 为什么我们要使用匿名函数&#xff1f;匿名函数存在的意义是为了简化一些函数的定义&#xff0c;特别是那些定义了之后只会被调用一次的函数&#xff0c;与其…...

百度Apollo:引领自动驾驶技术创新的先锋

文章目录 前言一、内容总结 前言 大家好&#xff0c;我是萝卜头不吃萝卜头&#xff0c;今天和大家分享一下我学习百度Apollo自动驾驶的心得。 在七月份的时候&#xff0c;我收到了Apollo开发者社区的邀请&#xff0c;进行学习Apollo自动驾驶汽车的2023星火培训训练&#xff0c…...

Redis 重写 AOF 日志期间,主进程可以正常处理命令吗?

重写 AOF 日志的过程是怎样的&#xff1f; Redis 的重写 AOF 过程是由后台子进程 bgrewriteaof 来完成的&#xff0c;这么做有以下两个好处。 子进程进行 AOF 重写期间&#xff0c;主进程可以继续处理命令请求&#xff0c;从而避免阻塞主进程子进程带有主进程的数据副本。这里…...

java实现生成RSA公私钥、SHA256withRSA加密以及验证工具类

前言&#xff1a; RSA属于非对称加密。所谓非对称加密&#xff0c;需要两个密钥&#xff1a;公钥 (publickey) 和私钥 (privatekey)。公钥和私钥是一对&#xff0c;如果用公钥对数据加密&#xff0c;那么只能用对应的私钥解密。如果用私钥对数据加密&#xff0c;只能用对应的公…...

lab7 thread

文章目录 Uthread: switching between threadstaskhints思路上下文的恢复和保存thread_createthread_schedule Using threads思路 Barrier Uthread: switching between threads 在这个练习中&#xff0c;你将为一个用户级别线程系统设计上下文切换机制&#xff0c;并实现它。 …...

接口自动化测试:mock server之Moco工具

什么是mock server mock&#xff1a;英文可以翻译为模仿的&#xff0c;mock server是我们用来解除依赖&#xff08;耦合&#xff09;&#xff0c;假装实现的技术&#xff0c;比如说&#xff0c;前端需要使用某些api进行调试&#xff0c;但是服务端并没有开发完成这些api&#…...

用python从零开始做一个最简单的小说爬虫带GUI界面(2/3)

目录 前一章博客 前言 主函数的代码实现 逐行代码解析 获取链接 获取标题 获取网页源代码 获取各个文章的链接 函数的代码 导入库文件 获取文章的标题 获取文章的源代码 提取文章目录的各个文章的链接 总代码 下一章内容 前一章博客 用python从零开始做一个最简单…...

CEF 缓存处理:清理缓存、禁用缓存、忽略缓存

目录 一、CEF缓存处理 1、指定缓存路径 2、清理缓存 3、禁用缓存 1)、原理分析...

Android 系统桌面 App —— Launcher 开发(1)

Android 系统桌面 App —— Launcher 开发&#xff08;1&#xff09; Launcher简介 Launcher就是Android系统的桌面&#xff0c;俗称“HomeScreen”也就是我们开机后看到的第一个App。launcher其实就是一个app&#xff0c;它的作用是显示和管理手机上其他App。目前市场上有很…...

一个程序员的工作日记--每天就干两件事,一年后让别人刮目相看

文章目录 成功源于专注一、早上布局二、晚上复盘三、技术细节四、专注与成功五、专注的重要性六、忙碌和赚钱七、结论以嵌入式开发为例&#xff1a;一、早上布局二、晚上复盘三、技术细节四、专注与成功五、忙碌和赚钱六、结论在嵌入式软件开发中&#xff0c;我们需要按照以下步…...

Linux虚拟机安装(Ubuntu 20)

最近这段时间使用VMWare安装了一下Ubuntu版本的Linux虚拟机&#xff0c;在这里记录一下安装时参考的文章以及需要注意的细节 参考链接&#xff1a; VMware虚拟机下安装Ubuntu20.04&#xff08;保姆级教程&#xff09; 一、安装VMWare 下载链接&#xff1a;VMware Workstatio…...

1.6 服务器处理客户端请求

客户端进程向服务器进程发送一段文本&#xff08;MySQL语句&#xff09;&#xff0c;服务器进程处理后再向客户端进程发送一段文本&#xff08;处理结果&#xff09;。 从图中我们可以看出&#xff0c;服务器程序处理来自客户端的查询请求大致需要经过三个部分&#xff0c;分别…...

火山引擎发布自研视频编解码芯片 压缩效率提升30%

8月22日&#xff0c;火山引擎视频云宣布其自研的视频编解码芯片已成功出片。经验证&#xff0c;该芯片的视频压缩效率相比行业主流硬件编码器可提升30%以上&#xff0c;未来将服务于抖音、西瓜视频等视频业务&#xff0c;并将通过火山引擎视频云开放给企业客户。 火山引擎总裁…...

从头开始:将新项目上传至Git仓库的简易指南

无论您是一个经验丰富的开发者还是一个刚刚起步的新手&#xff0c;使用Git来管理您的项目是一个明智的选择。Git是一个强大的版本控制系统&#xff0c;它可以帮助您跟踪项目的变化、合并代码以及与团队成员协作。在本文中&#xff0c;我们将为您提供一步步的指南&#xff0c;教…...

数据库的增量备份与差异备份

在当今数字时代&#xff0c;数据已经成为公司的主要资产。为了维护这些珍贵的数据&#xff0c;公司通常会采取各种数据保护措施&#xff0c;其中增量备份是一种很有效的方法。本文将详细介绍什么是数据库的增量备份&#xff0c;以及如何帮助企业更有效地维护数据。  我们需要…...

Unity UGUI轻量UI框架:200行代码实现零GC界面管理

1. 为什么还要自己手写UI框架&#xff1f;——当UGUI原生方案开始“卡脖子”很多人看到这个标题第一反应是&#xff1a;“都2024年了&#xff0c;还手写UI框架&#xff1f;Asset Store里几十个成熟方案&#xff0c;NGUI、FairyGUI、TextMeshPro配套的UI系统一抓一大把&#xff…...

如何用SMUDebugTool彻底掌控你的AMD Ryzen处理器性能调优

如何用SMUDebugTool彻底掌控你的AMD Ryzen处理器性能调优 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gitcode.co…...

基于Arduino的模块化DIY智能时钟:从RTC到RGB LED的完整实现

1. 项目概述&#xff1a;打造一台高度可定制的DIY RGB LED时钟如果你和我一样&#xff0c;对市面上千篇一律的电子钟感到审美疲劳&#xff0c;同时又对Arduino和电子DIY充满热情&#xff0c;那么这个项目可能就是为你准备的。我们不是在简单地组装一个套件&#xff0c;而是在亲…...

内存占用3KB!极致瘦身释放MCU无限可能

极致小体积&#xff0c;给工业领域带来了无限的可能&#xff1a;更低硬件成本&#xff0c;更小芯片体积&#xff0c;更低功耗&#xff0c;更高可靠性&#xff0c;让每一颗小MCU都拥有大系统的完整能力。 https://www.bilibili.com/video/BV1eZLi6PEjc/?spm_id_from333.1387.ho…...

从RD、CS到WK:一文讲透SAR主流成像算法的演进与选型实战

从RD、CS到WK&#xff1a;SAR成像算法选型实战指南 当无人机掠过灾区上空&#xff0c;或卫星扫描地球表面时&#xff0c;合成孔径雷达&#xff08;SAR&#xff09;正通过电磁波穿透云层和黑暗&#xff0c;将地面信息转化为高分辨率图像。而决定图像质量的关键&#xff0c;在于工…...

从零到上机:我的第一个Quest 3空间锚点应用是如何跑起来的(附完整Unity工程)

从零到上机&#xff1a;我的第一个Quest 3空间锚点应用是如何跑起来的&#xff08;附完整Unity工程&#xff09;第一次戴上Meta Quest 3时&#xff0c;那种虚拟与现实交织的震撼感至今难忘。但作为开发者&#xff0c;更让我着迷的是如何让虚拟物体在真实空间中"记住"…...

收藏干货|2026 版企业 AI 落地实操指南,程序员小白入门避坑必备

如今人工智能早已脱离概念炒作阶段&#xff0c;全面扎根企业实际业务场景&#xff0c;成为技术从业者与企业管理者无法回避的发展课题。各行各业都加速布局AI赛道&#xff0c;行业心态也从初期观望试探&#xff0c;彻底转变为实打实的落地攻坚。 不少企业高层主动牵头统筹AI规划…...

DS4Windows终极指南:3步让PS手柄在PC上完美运行游戏

DS4Windows终极指南&#xff1a;3步让PS手柄在PC上完美运行游戏 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 还在为PS手柄连接Windows电脑后无法识别而烦恼吗&#xff1f;&#x1f3ae…...

179个核心职位,50个公司分类,中国大模型产业全栈

最后 对于正在迷茫择业、想转行提升&#xff0c;或是刚入门的程序员、编程小白来说&#xff0c;有一个问题几乎人人都在问&#xff1a;未来10年&#xff0c;什么领域的职业发展潜力最大&#xff1f; 答案只有一个&#xff1a;人工智能&#xff08;尤其是大模型方向&#xff09;…...

总线式智能提示灯系统设计:从恒流驱动到模块化架构

1. 项目概述&#xff1a;从传统到智能的剧场提示灯系统革新在剧场、演播室或者大型活动现场的后台&#xff0c;如果你待过&#xff0c;一定对那套“红灯停&#xff0c;绿灯行”的提示灯系统不陌生。导演或舞台监督通过对讲机喊“Standby”&#xff08;准备&#xff09;&#xf…...