【Docker】Redis.Conf 文件配置【持久化AOF+定期删除+惰性删除+内存淘汰机制 allkeys-lru】详细教程!!!

本文主要是介绍【Docker】Redis.Conf 文件配置【持久化AOF+定期删除+惰性删除+内存淘汰机制 allkeys-lru】详细教程!!!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

本篇文章介绍了
Redis.Conf 文件配置【持久化AOF+定期删除+惰性删除+内存淘汰机制allkeys-lru】的详细教程,希望对您有所帮助!
如果没有安装Redis,请参考 Docker 安装Redis 详细教程!!!

redis.conf 文件配置

下载官方安装包redis.conf

链接: https://pan.baidu.com/s/1ML-8QNA9LWpcatf6mk25cA
提取码: 3jgf
复制这段内容后打开百度网盘手机App,操作更方便哦

我修改的方式,统一先在redis.conf文件中修改好,然后把改后的整个redis.conf文件的内容复制到docker中的redis.conf文件中。

持久化【AOF】

redis.conf文件默认AOF持久化关闭

appendonly no

在这里插入图片描述

配置:开启AOF持久化

appendonly yes

在这里插入图片描述

过期策略【定期删除+惰性删除】

定期删除是指Redis默认每隔 100ms 就 随机抽取 一些设置了过期时间的key,检测这些key是否过期,如果过期了就将其删除。

  • 100ms怎么来的?

在Redis的配置文件redis.conf中有一个属性"hz",默认为10,表示1s执行10次定期删除,即每隔100ms执行一次,可以修改这个配置值。
值越大说明刷新频率越快,最Redis性能损耗也越大。
hz的取值范围是1~500,通常不建议超过100,只有在请求延时非常低的情况下可以将值提升到100。

在这里插入图片描述

  • 随机抽取一些检测,一些是多少?

由redis.conf文件中的maxmemory-samples属性决定的,默认为5。开启时,把#去掉。

maxmemory-samples 5

在这里插入图片描述

惰性删除

在redis server,惰性删除是内置的策略,不用再配置redis.conf文件。

内存淘汰机制 allkeys-lru

配置redis.conf的最大内存,当内存的使用超出了最大内存,就会触发一个内存淘汰机制

maxmemory <bytes>

设置内存主动清除策略:
#默认是 noeviction:不删除策略

#maxmemory-policy noeviction

修改为allkeys-lru

maxmemory-policy allkeys-lru

allkeys-lru:对所有key通用,优先删除最近最少使用的Key

将改后的整个redis.conf文件内容到docker中的redis.conf文件中

#编辑文件
vi redis.conf

将改后的整个redis.conf文件内容到docker中的redis.conf文件中
#保存退出

:wq! 
#改完后重启docker restart redis 
#改完后查看文件命令 
cat redis.conf 

后记

千看不如一练,万思不如实践! 动起手来吧。

娱乐一下

【喵星人】+豆芽洗澡被偷拍!!!


在这里插入图片描述

这篇关于【Docker】Redis.Conf 文件配置【持久化AOF+定期删除+惰性删除+内存淘汰机制 allkeys-lru】详细教程!!!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/395286

相关文章

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Redis 的 SUBSCRIBE命令详解

《Redis的SUBSCRIBE命令详解》Redis的SUBSCRIBE命令用于订阅一个或多个频道,以便接收发送到这些频道的消息,本文给大家介绍Redis的SUBSCRIBE命令,感兴趣的朋友跟随... 目录基本语法工作原理示例消息格式相关命令python 示例Redis 的 SUBSCRIBE 命令用于订

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资