一文读懂Redis配置,史上真香配置
文章目录
- 基本配置项
- AOF持久化配置项
- RDB持久化配置项
- 淘汰策略配置项
- 主从复制配置项
- 鸣谢
让那些总为redis连接异常的小白指引明灯,少走弯路。为那些不知道如何进行高级配置的大佬整一杯小酒。
基本配置项
-
bind:用于设置Redis绑定的IP地址。默认情况下,Redis监听所有可用的接口,如果需要指定IP地址,可以使用此配置项进行设置。
默认开启,连接不上的原因之一,未注释掉只能进行本地连接,不能使用工具和远程连接
-
port:用于设置Redis监听的端口号。默认端口为6379。
连接不上的可能原因之一,端口号被改掉了。当然防火墙也是重点连接不上的原因(腾讯、阿里、宝塔。。。),记得开放端口哦,要不然连不上
-
timeout:用于设置Redis客户端连接的超时时间。如果客户端在指定的时间内没有与Redis建立连接,则会被关闭连接。
-
maxclients:用于限制同时连接到Redis的客户端数量。当客户端数量达到限制时,Redis将不再接受新的连接。
-
loglevel:用于设置Redis的日志级别。可以根据需要进行设置,例如设置为debug、info、notice、warning等不同的级别。
-
logfile:用于设置Redis日志文件的路径。默认情况下,Redis会将日志输出到标准输出。
-
databases:用于设置Redis数据库的数量以及各自的名称。默认情况下,只有一个数据库,其名称为“db0”。
默认16,db分区数量。代码不配置默认连接的是db0
-
requirepass:用于设置Redis的身份验证密码。
默认无密码,这也是连接不上的原因之一,密码验证被开启了。
-
notify-keyspace-events Ex :
key过期监听启用配置项
AOF持久化配置项
Redis的AOF(Append-Only File)持久化机制是通过记录所有对Redis数据库的写操作来达到持久化的目的。当Redis服务器重启时,会通过重新执行AOF文件中的命令来恢复数据。
- appendonly:用于开启或关闭AOF持久化。如果设置为"yes",则开启AOF持久化;如果设置为"no",则关闭AOF持久化。
- appendfilename:用于设置AOF文件的名称。默认值为"appendonly.aof"。
- appendfsync:用于设置AOF文件的同步策略。可以选择"always"、“everysec"或"no”。always表示每次写入都同步,everysec表示每秒同步一次,no表示由操作系统决定何时同步。默认值为"everysec"。
- auto-aof-rewrite-percentage:用于设置自动AOF重写的阈值。当AOF文件的扩展比例超过该值时,Redis会自动执行重写操作。默认值为100,表示当AOF文件的大小是上一次重写后大小的一倍时触发重写。
- auto-aof-rewrite-min-size:用于设置自动AOF重写的最小大小。只有在AOF文件的大小大于该值时,才会执行重写操作。默认值为64MB。
- no-appendfsync-on-rewrite:用于设置在执行AOF文件重写时是否禁用同步。如果设置为"yes",则在进行重写时不会进行同步操作。默认值为"yes"。
- aof-load-truncated:用于设置在加载AOF文件时是否允许Redis忽略出现错误的命令。如果设置为"yes",则忽略错误;如果设置为"no",则不允许加载出现错误的AOF文件。默认值为"yes"。
- aof-use-rdb-preamble:用于设置AOF文件的开头是否包含RDB格式的部分。如果设置为"yes",则在AOF文件的开头会先保存一份RDB格式的数据,这有助于加速数据加载。默认值为"no"。
RDB持久化配置项
Redis的RDB(Remote Dictionary Base)持久化机制是通过将Redis数据库的某个时间点的状态以二进制格式保存到磁盘上的方式来实现持久化。当Redis服务器需要恢复数据时,可以通过加载RDB文件来恢复数据。
- save:用于设置RDB持久化的时间间隔和条件。可以设置不同的时间间隔和条件组合,例如"save 900 1"表示每900秒内有至少1个写操作就保存一次RDB文件;"save 300 10"表示每300秒内有至少10个写操作就保存一次RDB文件。
- bgsave:用于设置以后台方式执行RDB持久化。如果设置为"yes",则以后台方式执行RDB持久化,不会阻塞主线程。
- rdbcompression:用于设置RDB文件是否使用压缩。如果设置为"yes",则使用LZF算法进行压缩。
- rdbchecksum:用于设置RDB文件是否使用校验和。如果设置为"yes",则添加校验和到RDB文件中。
- dbfilename:用于设置RDB文件的名称。
- dir:用于设置RDB文件的存储目录。
淘汰策略配置项
Redis提供了多种淘汰策略配置项,用于配置在内存不足时如何淘汰掉不需要的数据。
- maxmemory-policy:用于设置Redis的最大内存使用策略。可以选择不同的策略,例如"noeviction"、“lru”、“allkeys-lru”、“volatile-lru”、“allkeys-random”、“volatile-random"或"volatile-ttl”。
- volatile-ttl:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键。如果设置为"yes",则只会淘汰带有过期时间的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
- volatile-lru:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键并使用LRU算法。如果设置为"yes",则只会淘汰带有过期时间的键并使用LRU算法;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
- volatile-random:用于设置Redis在淘汰数据时,是否只淘汰带有过期时间的键并随机选择要淘汰的键。如果设置为"yes",则只会淘汰带有过期时间的键并随机选择要淘汰的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
- allkeys-lru:用于设置Redis在淘汰数据时,是否使用LRU算法淘汰所有的键。如果设置为"yes",则使用LRU算法淘汰所有的键;如果设置为"no",则可能会淘汰带有过期时间的键以及不带过期时间的键。
- allkeys-random:用于设置Redis在淘汰数据时,是否随机选择要淘汰的键。如果设置为"yes",则随机选择要淘汰的键;如果设置为"no",则不会淘汰任何键。
- noeviction:用于设置Redis在内存不足时禁止淘汰任何键。如果设置为"yes",则禁止淘汰任何键;如果设置为"no",则根据上述策略进行淘汰。
主从复制配置项
Redis支持主从复制,可以实现数据的高可用性和读写分离。=
- replication-role:用于设置Redis节点的角色。如果节点是主节点,则设置为"master";如果节点是从节点,则设置为"slave"。
- master-host:用于设置主节点的IP地址。
- master-port:用于设置主节点的端口号。
- master-auth-password:用于设置主节点的身份验证密码。
- slave-announce:用于设置是否宣告从节点。如果设置为"yes",则宣告从节点;如果设置为"no",则不宣告从节点。
- slave-read-only:用于设置从节点是否只读。如果设置为"yes",则从节点只读;如果设置为"no",则从节点可写。
- slave-priority:用于设置从节点的优先级。优先级越高的从节点越有可能被选为主节点。
- replica-read-only:用于设置从节点是否只读。如果设置为"yes",则从节点只读;如果设置为"no",则从节点可写。这个配置项比slave-read-only更具体,优先级更高。
- replica-priority:用于设置从节点的优先级。优先级越高的从节点越有可能被选为主节点。
- replica-announce:用于设置是否宣告从节点。如果设置为"yes",则宣告从节点;如果设置为"no",则不宣告从节点。这个配置项比slave-announce更具体,优先级更高。
鸣谢
- 非常感谢你从头到尾阅读了这篇文章,希望其中的内容对你有所启发和帮助。如果你还有其他问题或需要进一步的了解,欢迎随时关注我的动态并留言
- 最后可以给作者点个关注和小赞赞嘛,谢谢!
- 觉得有收藏价值可以进行收藏
相关文章:
一文读懂Redis配置,史上真香配置
文章目录 基本配置项AOF持久化配置项RDB持久化配置项淘汰策略配置项主从复制配置项鸣谢 让那些总为redis连接异常的小白指引明灯,少走弯路。为那些不知道如何进行高级配置的大佬整一杯小酒。 基本配置项 bind:用于设置Redis绑定的IP地址。默认情况下&…...

maven打出jar中动态替换占位符
使用场景: maven打出的jar中pom.xml动态替换占位符 有些时候某些公共工具jar包被项目引用后发现公共jar的pom.xml中的version依然还是占位符,例如下面 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok<…...
【Git游戏】通过游戏重新学习Git
在提交树上移动 HEAD HEAD:一个标志符号(通常情况下指向当前分支,间接指向当前最新的提交记录) 可以通过git checkout commitID从而指向提交记录 commitID 本身是一串哈希值(基于 SHA-1,共 40 位) 我们在…...
如何通过以太坊JSON-RPC方式获取ERC-20代币的信息?
目录 一、ERC-20介绍 二、ERC-20代币标准功能 1、可选功能 2、标准功能 三、获取代币信息...

线性代数的学习和整理4: 求逆矩阵的多种方法汇总
目录 原始问题:如何求逆矩阵? 1 EXCEL里,直接可以用黑盒表内公式 minverse() 数组公式求A- 2 非线性代数方法:解方程组的方法 3 增广矩阵的方法 4 用行列式的方法计算(未验证) 5 A-1/|A|*A* &…...

【C#学习笔记】匿名函数和lambda表达式
文章目录 匿名函数匿名函数的定义匿名函数作为参数传递匿名函数的缺点 lambda表达式什么是lambda表达式闭包 匿名函数 为什么我们要使用匿名函数?匿名函数存在的意义是为了简化一些函数的定义,特别是那些定义了之后只会被调用一次的函数,与其…...
百度Apollo:引领自动驾驶技术创新的先锋
文章目录 前言一、内容总结 前言 大家好,我是萝卜头不吃萝卜头,今天和大家分享一下我学习百度Apollo自动驾驶的心得。 在七月份的时候,我收到了Apollo开发者社区的邀请,进行学习Apollo自动驾驶汽车的2023星火培训训练,…...

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

java实现生成RSA公私钥、SHA256withRSA加密以及验证工具类
前言: RSA属于非对称加密。所谓非对称加密,需要两个密钥:公钥 (publickey) 和私钥 (privatekey)。公钥和私钥是一对,如果用公钥对数据加密,那么只能用对应的私钥解密。如果用私钥对数据加密,只能用对应的公…...

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

接口自动化测试:mock server之Moco工具
什么是mock server mock:英文可以翻译为模仿的,mock server是我们用来解除依赖(耦合),假装实现的技术,比如说,前端需要使用某些api进行调试,但是服务端并没有开发完成这些api&#…...

用python从零开始做一个最简单的小说爬虫带GUI界面(2/3)
目录 前一章博客 前言 主函数的代码实现 逐行代码解析 获取链接 获取标题 获取网页源代码 获取各个文章的链接 函数的代码 导入库文件 获取文章的标题 获取文章的源代码 提取文章目录的各个文章的链接 总代码 下一章内容 前一章博客 用python从零开始做一个最简单…...
CEF 缓存处理:清理缓存、禁用缓存、忽略缓存
目录 一、CEF缓存处理 1、指定缓存路径 2、清理缓存 3、禁用缓存 1)、原理分析...

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

一个程序员的工作日记--每天就干两件事,一年后让别人刮目相看
文章目录 成功源于专注一、早上布局二、晚上复盘三、技术细节四、专注与成功五、专注的重要性六、忙碌和赚钱七、结论以嵌入式开发为例:一、早上布局二、晚上复盘三、技术细节四、专注与成功五、忙碌和赚钱六、结论在嵌入式软件开发中,我们需要按照以下步…...

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

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

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

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

数据库的增量备份与差异备份
在当今数字时代,数据已经成为公司的主要资产。为了维护这些珍贵的数据,公司通常会采取各种数据保护措施,其中增量备份是一种很有效的方法。本文将详细介绍什么是数据库的增量备份,以及如何帮助企业更有效地维护数据。 我们需要…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...

MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...

【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合
作者:来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布,Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明,Elastic 作为 …...