首页/新闻资讯/正文详情

【Redis】初识 Redis

发布时间:2026/9/27 21:49:53 来源:云帆数科 栏目:资讯中心
【Redis】初识 Redis
目录1、Redis 是什么2、对比 MySQL3、单机架构与分布式架构3.1 引入分布式架构3.2 引入负载均衡3.3 数据库读写分离3.4 引入缓存服务器3.5 数据库分库分表3.6 引入微服务4、Redis 的一些特性4.1 基于内存 高性能4.2 可编程性4.3 可扩展性4.4 持久化1、Redis 是什么RedisRemote Dictionary Server是一个开源的、在内存使用键值对存储数据的系统常被称为“数据结构服务器”。它的核心特点基于内存数据主要存放在内存中读写速度极快微秒级通常能达到 10万 QPS。但仍然比直接在内存中定义和访问变量要慢。丰富的数据结构不只是简单的 key-value支持 String、Hash、List、Set、ZSet有序集合、BitMap、HyperLogLog、Stream 等。持久化可选提供 RDB快照和 AOF追加日志两种方式可以把内存数据落盘但持久化不是它的强项。单线程模型核心命令处理避免锁竞争配合 I/O 多路复用性能极高。Redis 6.0 后网络 I/O 引入多线程。常用作缓存这是它最广泛的用途也用于分布式锁、计数器、排行榜、消息队列、会话存储等。2、对比 MySQL维度RedisMySQL存储介质内存为主可持久化到磁盘磁盘为主内存做缓存数据模型Key-Value 多种数据结构非关系型数据库关系表行/列Schema 固定关系型数据库查询方式命令式 APIGET/SET/LPUSH…SQL读写速度极快微秒级10万 QPS较慢毫秒级千级 QPS 常见容量受内存限制通常 GB 级受磁盘限制可 TB/PB 级事务支持简单事务MULTI/EXEC无回滚完整 ACID 事务支持回滚一致性最终一致主从异步复制强一致可配置隔离级别复杂查询不支持 JOIN、聚合等支持 JOIN、GROUP BY、子查询持久化可选可能丢数据默认强持久化典型用途缓存、计数器、排行榜、分布式锁、队列业务主数据、订单、用户、交易成本内存贵单位容量成本高磁盘便宜单位容量成本低3、单机架构与分布式架构3.1 引入分布式架构注意下面的演化过程只是一个粗略的过程真实的商业项目演化与业务密切相关业务比技术更重要技术只是给业务提供支持。单机架构所有组件应用、数据库、缓存都跑在一台机器上或者每个组件只部署一个实例。分布式架构多个节点协同工作对外表现为一个整体解决单机在容量、性能、可用性上的天花板。单机的瓶颈通常有三个CPU/内存上限一台机器再强也有上限单点故障机器挂了服务就没了扩展困难只能垂直升级换更好的机器成本高且有极限分布式就是为了突破这三点。但是分布式也有缺点增加代码的复杂度容易出现 BUG。3.2 引入负载均衡负载均衡把大量并发请求按照某种策略分发到多个服务器上让每台机器都不至于过载同时提升整体吞吐和可用性。常见负载均衡算法算法说明适用场景轮询Round Robin依次分发后端性能相近加权轮询按权重分发机器配置不同最少连接发给当前连接最少的请求耗时差异大加权最少连接连接数 权重综合场景IP Hash同一 IP 固定到同一后端需要会话保持一致性 Hash节点增减时影响小缓存类场景随机随机选简单场景响应时间最短选响应最快的对延迟敏感3.3 数据库读写分离上面的分布式架构中多个应用服务器都读写一台存储服务器而大多数互联网业务是读多写少典型比例 10:1 甚至 100:1。单库面临的问题读请求太多CPU 和连接数被占满写请求和读请求互相争抢资源单机容量和性能有上限解决方案建立两个数据库一个主库和从库主控负责写请求从库负责读请求。再定期的将主库和从库的数据进行同步3.4 引入缓存服务器存储服务器存储的大概 20% 的数据可以满足大概 80% 的访问请求。如果将所有数据都放入 MySQL用户的请求都要读取 MySQL 的数据而 MySQL 的访问速度远小于 Redis 的访问速度。所以我们可以把那大概 20% 的热点数据存储在 RedisRedis 所在的服务器称为缓存服务器。MySQL 仍然存储所有数据。3.5 数据库分库分表有时候数据多到一台存储服务器都存储不下的情况这时候就需要多台存储服务器既然有了多台服务器之前都是将用户表、商品表、交易表存储在同一个数据库服务器的不同数据库那么现在可以将这些分别存储在不同的数据库服务器上。即一个数据库服务器只存储一个或一部分数据库。如果一个数据库太大一台数据库服务器都存不下我们可以对该数据库进行拆分比如拆成 5 部分分别用 5 台数据库服务器存储。3.6 引入微服务之前应用服务器,一个服务器程序里面做了很多的业务.这就可能会导致这一个服务器的代码变的越来越复杂为了更方便于代码的维护,就可以把这样的一个复杂的服务器,拆分成更多的,功能更单一,但是更小的服务器。这样做虽然更方便于代码的维护更方便于代码复用。但代价是系统性能的下降因为不同的微服务之间需要网络进行通信网络传输的速度很可能比读取硬盘的速度都还要慢。但是现在的万兆网卡读写的速度已经超过硬盘的读写速度了。系统复杂程度提高系统可用性下降可用性 系统实际运行时间 / 总时间这就需要一系列的手段来保证系统的可用性比如更丰富的监控系统以及配套的运维人员。4、Redis 的一些特性4.1 基于内存 高性能数据放内存读写延迟微秒级单机可达10万 QPS单线程处理命令避免锁竞争和上下文切换命令原子执行。多线程提高效率的前提是 CPU 密集型任务此时使用多线程可以充分利用 CPU 的多核资源而 Redis 的主要任务是操作内存的数据结构不会占用很多 CPU 资源I/O 多路复用epoll/kqueue 处理海量连接Redis 6.0 后网络 I/O 引入多线程命令处理仍是单线程4.2 可编程性针对 Redis 的操作,可以直接通过简单的交互式命令进行操作.也可以通过一些脚本的方式,批量执行一些操作(可以带有一些逻辑)。Redis 的可编程性主要经历了三个阶段Lua 脚本、Redis Functions以及更进一步的触发器和函数4.3 可扩展性Redis 的可扩展性核心在于Modules模块系统。如果说 Lua 脚本和 Functions 是让你在 Redis 提供的“积木”上搭东西那 Modules 就是让你自己造积木甚至改造积木的材质。它的目标很明确让开发者能够以接近 Redis 原生命令的速度去扩展全新的数据结构和命令4.4 持久化Redis 是内存数据库但提供两种持久化方式RDB快照某一时刻把内存数据全量写入磁盘优点文件小、恢复快、适合备份缺点两次快照之间宕机会丢数据AOF追加日志记录每条写命令重启时重放优点丢数据少可配置每秒同步缺点文件大、恢复慢混合持久化4.0RDB 全量 AOF 增量结合兼顾恢复速度和数据安全实际生产中常用RDB AOF 混合并配合主从复制做冗余。

相关推荐

重点分析如何利用生成器(Generators)、装饰器(Decorators)以及上下文管理器(Context Managers)构建一个高效、低内存占用的数据流处理框架
重点分析如何利用生成器(Generators)、装饰器(Decorators)以及上下文管理器(Context Managers)构建一个高效、低内存占用的数据流处理框架

本报告旨在深入探讨Python编程语言在现代数据处理场景中的高级应用,重点分析如何利用生成器(Generators)、装饰器(Decorators)以及上下文管理器(Context Managers)构建一个高效、低内存占用的数… · 2026/9/27 21:49:46

分享一套 GPT-6 的 SCI 写作方法,科研效率极速提升!
分享一套 GPT-6 的 SCI 写作方法,科研效率极速提升!

各位同仁好,我是七哥。一个在高校里从事人工智能 相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude 等大模型 学术实操相关问题,多多交流,相互成就,共同进步。 多数学术同仁都在烦恼同一件事情:好不容易开始写,章节之间怎么衔… · 2026/9/27 21:49:46

一文带你看懂,GPT-6 Astra 如何教你写出高水准的文献综述!
一文带你看懂,GPT-6 Astra 如何教你写出高水准的文献综述!

各位同仁好,我是七哥。一个在高校里从事人工智能 相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude 等大模型 学术实操相关问题,多多交流,相互成就,共同进步。 多数人最容易掉进一个坑:看起来引用了很多论文,实际上只是把不同… · 2026/9/27 21:49:46

3步搞定权威网站设计,小白从零搭建也能上首页
3步搞定权威网站设计,小白从零搭建也能上首页

3步搞定权威网站设计,小白从零搭建也能上首页 很多转行做网站的新手,第一反应就是焦虑:我不会代码,连HTML标签都分不清,怎么从零搭建一个看起来专业、权威的企业站?别慌,这种“技术恐惧症”太常见了。其实,只要逻辑理顺,哪怕你是纯小白,也能搭… · 2026/9/27 22:25:21

【Agent Harness实战】用 TaoToken 统一 Key 给 Agent 上下文“瘦身”:config.toml 骨架与记忆保留验证
【Agent Harness实战】用 TaoToken 统一 Key 给 Agent 上下文“瘦身”:config.toml 骨架与记忆保留验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:25:21

Claude模型综合分析:从Constitutional AI到AI安全对齐的工程实践
Claude模型综合分析:从Constitutional AI到AI安全对齐的工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:25:21

Codex 长任务总要重新开始?用 TaoToken 统一 Key 打通 ChatGPT Pro 与 Credits 的配置思路
Codex 长任务总要重新开始?用 TaoToken 统一 Key 打通 ChatGPT Pro 与 Credits 的配置思路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:25:21

网站关闭了域名备案图解步骤:3步搞定注销与证书变更
网站关闭了域名备案图解步骤:3步搞定注销与证书变更

网站关闭了域名备案图解步骤:3步搞定注销与证书变更 很多独立站长在刚接手网站时,往往被那些千篇一律的模板网站折磨得够呛。看着满屏的廉价弹窗和僵硬的布局,不仅显得不专业,更让潜在客户一眼就想划走。其实,这种“丑”的背后,往往隐藏着更深层的运维… · 2026/9/27 22:25:09

每日学习30分轻松掌握CursorAI:Cursor AI使用技巧总结与TaoToken配置实战
每日学习30分轻松掌握CursorAI:Cursor AI使用技巧总结与TaoToken配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:25:09

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码