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

Redis学习笔记之——学习计划

Redis——Remote Dictionary Server,开源、基于内存、速度快、key-value...

Redis做为一个高性能的键值存储系统,广泛应用于缓存、会话存储、分布式锁以及其他需要快速访问的数据场景中。熟悉掌握redis,似乎已成为广大码农们必备的一项技能。

下面是我的一个redis的学习计划,开启我的redis学习之旅~

一、基础数据类型

  • 深入学习 Redis 的五种基本数据类型:字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)。
  • 掌握每种数据类型的基本操作命令,例如:
    • 字符串:SET、GET、INCR、DECR 等。
    • 哈希:HSET、HGET、HGETALL 等。
    • 列表:LPUSH、RPUSH、LPOP、RPOP、LRANGE 等。
    • 集合:SADD、SMEMBERS、SINTER、SUNION 等。
    • 有序集合:ZADD、ZRANGE、ZRANK 等。

二、持久化机制

  • 学习 Redis 的两种持久化方式:RDB(快照)和 AOF(追加文件)。
  • 理解 RDB 持久化的原理、优缺点以及如何配置和触发 RDB 快照。
  • 掌握 AOF 持久化的工作方式、重写机制以及与 RDB 的区别和选择策略。
  • 进行持久化相关的实验,例如设置不同的持久化配置参数,观察数据在不同情况下的持久化效果,并了解如何从持久化文件中恢复数据。

三、高级功能与配置

目标:深入理解Redis的高级功能,如事务、发布/订阅、Lua脚本等,以及优化Redis性能。

  • 事务
    • MULTI, EXEC, DISCARD, WATCH命令
    • 事务的ACID特性(在Redis中的体现)
  • 发布/订阅
    • PUBLISH, SUBSCRIBE, UNSUBSCRIBE命令
    • 使用Pub/Sub实现消息传递
  • Lua脚本
    • Lua语言基础
    • 在Redis中运行Lua脚本(EVAL, EVALSHA)
    • Lua脚本的优势和应用场景
  • 复制与高可用性
    • 主从复制
    • Sentinel(哨兵)监控与自动故障转移
  • 性能优化
    • 内存管理
    • 网络优化
    • 配置文件调优
  • 分布式锁

  • 位图

  • HyperLogLog

  • 布隆过滤器

  • 限流

    • 简单限流

    • 漏斗限流 Redis-Cell

  • GeoHash

  • Scan

 四、进阶学习

  • 线程IO模型
  • 压缩列表、快速列表、跳跃列表、基数树
  • epoll/select/kqueue
  • 通信协议
  • 持久化
  • 小对象压缩
  • 集群、主从同步、哨兵(sentinel)
  • stream
  • 过期策略

五、巩固+复习

用常见面试题去检阅已学知识点。

相关文章:

Redis学习笔记之——学习计划

Redis——Remote Dictionary Server,开源、基于内存、速度快、key-value... Redis做为一个高性能的键值存储系统,广泛应用于缓存、会话存储、分布式锁以及其他需要快速访问的数据场景中。熟悉掌握redis,似乎已成为广大码农们必备的一项技能。…...

npm : 无法加载文件 D:\nodejs\npm.ps1

问题描述 npm run serve 启动一个Vue项目,报错如下: npm : 无法加载文件 D:\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/? LinkID135170 中的 about_Execution_Policies。…...

【Neo4J】neo4j docker容器下的备份与恢复

文章目录 一. 官网说明1. 操作说明2. 注意事项 二. docker 容器化操作1. 导出(备份)停止容器执行备份 2. 导入(恢复)停止容器(如果未停止)执行导入 3. 启动容器 一. 官网说明 https://neo4j.com/docs/operations-manual/current/…...

更新数据时Redis的操作

一般做法是在数据库更新后删除Redis中对应的缓存数据,而非更新数据。那么为什么要这么做呢? 以下是一些拙见 场景使用 金融交易系统:在金融领域,数据的准确性至关重要。任何数据不一致都可能导致严重的财务损失。因此&#xff0…...

[实战]MySQL时间多了一秒

场景 同时保存一条数据在MySQL和Redis中,JAVA系统中显示Redis和MySQL数据差了一秒,即MySQL比Redis中快了一秒。 复现 我们系统中MySQL的时间类型用的是timestamp,问题是一样的。 CREATE TABLE test_date (id int(11) NOT NULL AUTO_INCRE…...

Windows环境基于ecplise的spring boot框架新建spring start project

SpringToolSuite4 新建项目实例 前言Windows基于ecplise 工具的spring boot 架构 前言 使用Spring boot 框架向前端传输数据 Windows基于ecplise 工具的spring boot 架构 spring-tool-suite-4官网下载链接spring tool,下载太慢的话可以使用迅雷加速,右…...

C 进阶 — 字符函数和字符串函数 ( 二 )

C 进阶 — 字符函数和字符串函数 ( 二 ) 书接上回 C 进阶 — 字符函数和字符串函数 ( 一 ) 1.9 strtok 参考资料 strtok 函数用法详解 char * strtok ( char * str, const char * sep );strtok 是 [C 标准库](https://so.csdn.net/so/search?qC 标准库&spm1001.2101.3…...

Mybatis Plus 3.0 快速入门

1、简介 MyBatis-Plus (简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 2、创建并初始化数据库 2.1、创建数据库 mybatis_plus 2.2、创建 User 表 其表结构如下: idnameageemail1Jone18test1@baomidou.com2Jack…...

RFDiffusion 计算二面角函数get_dih解读

get_dih 函数计算任意四个连续原子之间的二面角(dihedral angle),它描述了主链和侧链原子的三维空间排布。 源代码: def get_dih(a, b, c, d):"""calculate dihedral angles for all consecutive quadruples (a[i],b[i],c[i],d[i])given Cartesian coordi…...

记一次回调失败问题

问题背景: 客户的问题是部分订单收不到回调,部分订单能正常收到回调,而回调的字段其实都是一样的,这不是很奇怪么? 分析过程: 网络拓扑大概如下图 找到一笔回调异常的订单,在阿里云日志服务器…...

前端常用的方法

时间处理 moment时间处理函数 // 时间日期相关常用的方法变量 import moment from moment;// 获取当前时间 moment export const nowDateMoment moment(new Date()); export const nowDateY moment(new Date()).format(YYYY); export const nowDateM moment(new Date()).f…...

RK3568(六)——led设备驱动(GPIO子系统)

修改设备树文件 先关闭心跳灯功能,也就是在图 10.4.1.2 中第 167 行添加 status 改为 disabled,也就是禁止 work 这个节点,那么禁止心跳灯功能。 我们后面需要禁止哪个功能,只需要将其 status 属性改为 disabled 就可以了。 gpi…...

hbuilder 本地插件配置

插件存放路径,项目根目录nativeplugins下,没有就新建。 aar文件存放路径\nativeplugins\module\android package.json存放路径\nativeplugins\module\ 配置package.json文件 { "name": "module", "id": "modu…...

Spring Boot集成Kafka:最佳实践与详细指南

文章目录 一、生产者1.引入库2.配置文件3.配置类PublicConfig.javaMessageProducer.java 4.业务处理类 三、消费者1.引入库2.配置类PublicConfig.javaMessageConsumer.java 3.业务类 一、生产者 1.引入库 引入需要依赖的jar包&#xff0c;引入POM文件&#xff1a; <depend…...

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 多图推理

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 多图推理 flyfish 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_LoRA配置如何写 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_单图推理 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_原模型_单图推理 基于Q…...

详解下c语言下的多维数组和指针数组

在实际c语言编程中&#xff0c;三维及以上数组我们使用的很少&#xff0c;二维数组我们使用得较多。说到数组&#xff0c;又不得关联到指针&#xff0c;因为他们两者的联系太紧密了。今天我们就详细介绍下c语言下的多维数组(主要是介绍二维数组)和指针。 一、二维数组 1.1&am…...

免费送源码:Java+ssm+MySQL 基于微服务架构的餐饮系统的设计与实现 计算机毕业设计原创定制

摘 要 近年来,我国经济和社会发展迅速,人们物质生活水平日渐提高,餐饮行业更是发展迅速,人们对于餐饮行业的认识和要求也越来越高。传统形式的餐饮行业都是以人为本,管理起来需要很多人力、物力、财力,既不方便管理者的管理,也不方便顾客实时了解餐厅动态,给传统餐饮行业的经…...

LeetCode hot100-69-N

https://leetcode.cn/problems/valid-parentheses/description/?envTypestudy-plan-v2&envIdtop-100-liked 20. 有效的括号 已解答 简单 相关标签 相关企业 提示 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#x…...

【橘子容器】如何构建一个docker镜像

你肯定打过docker镜像是吧&#xff0c;作为一个开发这很正常&#xff0c;那么你用的什么打包方式呢&#xff0c;这里我们来梳理几种常用的docker镜像构建方式。 ps&#xff1a;这里不是太讲原理&#xff0c;更多的是一种科普和操作。因为讲原理的东西网上已经够多了。 一、Dock…...

EFAK kafka可视化管理工具部署使用

简介&#xff1a;EFAK是开源的可视化和管理软件。它允许您查询、可视化、提醒和探索您的指标&#xff0c;无论它们存储在何处。简单来说&#xff0c;它为您提供了将 Kafka 集群数据转换为漂亮的图形和可视化效果的工具。 环境&#xff1a;①操作系统&#xff1a;CentOS7.6&…...

PlayAI在特殊教育中的突破性应用:自闭症儿童社交训练响应率提升4.8倍的神经反馈模型首次公开

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;PlayAI教育领域应用案例 PlayAI 是一个面向教育场景的轻量级AI交互平台&#xff0c;支持教师快速构建可对话、可评估、可追踪的学习代理。其核心优势在于无需深度学习背景即可配置多轮问答逻辑、知识图谱链接…...

Qwen模型 LeetCode 2584. 分割数组使乘积互质 JavaScript实现

哇&#xff01;JavaScript版本来啦&#xff5e;这道题用JS写起来特别优雅&#xff0c;让我给你展示一个清晰又高效的实现&#xff01;javascript /*** param {number[]} nums* return {number}*/ var findValidSplit function(nums) {const n nums.length;if (n 1) return -…...

焰境·万载——新一代文旅网站制作展示

江西万载数字文旅平台 北京高校在读生发起 AI 技术赋能县域文旅数字化转型 项目简介 焰境万载是围绕江西省万载县打造的数字文旅平台&#xff0c;以"中国花炮之乡"的千年烟花文化为核心&#xff0c;融合非遗传承、美食特产、旅游导览&#xff0c;以 AI 动漫角色&q…...

固件逆向实战指南:从熵值分析到函数重建的七步法

1. 这不是“刷机教程”&#xff0c;而是一份固件逆向的实战切片很多人第一次听说“固件逆向”&#xff0c;脑子里浮现的是路由器刷OpenWrt、智能摄像头换壳跑Home Assistant&#xff0c;或者某款老式NAS突然不支持新硬盘&#xff0c;只好翻出U-Boot命令硬怼。这些确实是固件逆向…...

Linux-安装cmatrix

linux-安装cmatrix &#xff08;黑客帝国矩阵效果&#xff09; su root #切换身份到root不受权限控制 cd /usr/src #进入源码下载位置&#xff0c;准备下载安装包利用xftp 共享传送文件进入home找到文件&#xff0c;cp 文件 /usr/src解压&#xff0c;进…...

5分钟搞定视频号批量下载:开源工具让效率提升20倍

5分钟搞定视频号批量下载&#xff1a;开源工具让效率提升20倍 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 你是否还在为下…...

AI Agent Harness Engineering 在房地产中的应用:智能推荐与价值评估

AI Agent Harness Engineering 在房地产中的应用:智能推荐与价值评估 引言:房地产数字化转型的「最后一公里」——智能决策的人机协同闭环 痛点引入:千亿级赛道下的三大决策「卡脖子」难题 房地产作为全球规模最大的实体产业之一(据CBRE世邦魏理仕2024年全球房地产市场报…...

DeepSeek总结的从 DuckDB 迁移到 chDB基准测试

来源: https://github.com/chdb-io/cookbook/tree/main/migration-from-duckdbBENCHMARK.md 迁移基准测试 —— 深度探讨 本文是从 DuckDB 迁移到 chDB指南的配套文档。指南的第 5 节将环境/场景/结果/摘要内联呈现&#xff1b;本文件则包含不适合指南风格流程的部分&#xf…...

如何快速配置TQVaultAE:泰坦之旅玩家的终极装备管理与存档扩展指南

如何快速配置TQVaultAE&#xff1a;泰坦之旅玩家的终极装备管理与存档扩展指南 【免费下载链接】TQVaultAE Extra bank space for Titan Quest Anniversary Edition 项目地址: https://gitcode.com/gh_mirrors/tq/TQVaultAE TQVaultAE是《泰坦之旅周年版》玩家的开源装备…...

UE5官方文档(第一人称射击游戏教程)解读 第七章

好了&#xff0c;今天来到我们的第七章&#xff0c;今天将承上启下&#xff0c;延伸输入部分的工作。 配置角色移动 Coder 03 Configure Character Movement with C in Unreal Engine | Unreal Engine 5.7 Documentation | Epic Developer Community // Copyright Epic Games…...