新闻详情

新闻详情

首页 / 资讯中心 / 详情

【Redis】初识 Redis

发布时间:2026/9/27 21:49:57来源:尧图网络
【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 混合并配合主从复制做冗余。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

IBM企业战略规划方法论及实践路径:OGSM 与 EVM 赋能市场突围 2026/9/27 22:47:34

IBM企业战略规划方法论及实践路径:OGSM 与 EVM 赋能市场突围

本 108 页 PPT 适配企业战略规划、战略解码、目标管理类咨询方案编制。对比 OGSM、OKR、KPI 工具差异,详解 OGSM 目的‑目标‑策略‑衡量核心框架,结合 “落地袁环”,打通从战略解码到任务落地的闭环。包含企业与个人实操案例、一页纸战略模板…

阅读更多 →
Eclipse汉化(快速,推荐) 2026/9/27 22:47:33

Eclipse汉化(快速,推荐)

直接点击管理运行,下一步,下一步。勾选即可安装完成 java安装包链接:https://pan.quark.cn/s/675ae8ae5426国内镜像地址(速度快):[https://mirrors.tuna.tsinghua.edu.cn/eclipse/technology/babel/update-…

阅读更多 →
16-00-C#常用数据结构-附录全3篇概要 2026/9/27 22:47:33

16-00-C#常用数据结构-附录全3篇概要

附录概要:术语、源码索引与参考资源 系列:C# 与常用数据结构源码剖析 附录 目录口径:截至 2026-08-14,00—16 共 17 个内容目录、90 个内容 Markdown 文件。物理目录另有根级 Plan.md、文生关键词、质量审核记录以及验证说明/结果…

阅读更多 →
哪些行业需要重点关注GEO,以及可以从哪些方面关注 2026/9/27 22:47:27

哪些行业需要重点关注GEO,以及可以从哪些方面关注

1. 引言随着生成式AI的普及,越来越多用户通过ChatGPT、Perplexity、豆包、Kimi等AI助手直接获取答案,传统搜索引擎的流量入口地位正在被削弱。GEO(Generative Engine Optimization,生成式引擎优化)应运而生&#xff0c…

阅读更多 →
重温STM32基础:外部中断(2) 2026/9/27 22:47:27

重温STM32基础:外部中断(2)

文章目录什么时候用中断?课程硬件中断配置流程(代码)RCC 配置GPIO配置AFIO配置EXTI配置配置NVIC中断函数ISR (Interrupt Service Routine/Interrupt Handler)中断函数使用注意点中断函数名字中断源判断清除标志位其他使用注意点中断函数无参无…

阅读更多 →
数字孪生在嵌入式开发中的应用:从虚拟原型到OTA闭环 2026/9/27 22:47:27

数字孪生在嵌入式开发中的应用:从虚拟原型到OTA闭环

摘要:数字孪生正在从工业仿真走向嵌入式开发。嵌入式系统市场报告将数字孪生与无线连接、传感器融合和云边协同并列为嵌入式系统采用的关键技术。开发人员可以在硬件可用之前验证软件。本文从虚拟原型、硬件在环仿真和CRA合规三个维度,分析数字孪生在嵌入…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉