分布式缓存技术详解:Redis必知知识点
需积分: 13 169 浏览量
更新于2024-09-01
收藏 53KB MD 举报
"分布式缓存及Redis必知必会"
**分布式缓存的重要性**
在项目中,缓存是如何使用的?减少 MySQL 的 QPS 压力,是作为分布式系统部署架构,可以作为 Redis redlock 锁使用。使用缓存可以解决频繁查询重复数据库耗时问题,提高系统性能。
**缓存的优点**
高性能:解决频繁查询重复数据库耗时问题。如果有 1000 个人,每次都查询的是重复的数据,5 分钟内从数据库中查询了 1 万次,每次耗时 800ms,查询会很慢。如果第一个人查询耗时 800ms,然后将数据写入到缓存中,那么之后的人直接从缓存中读取,只需要 10ms,效率可想而知。
高并发:减少数据库的请求量,分担压力。数据库承载每秒的请求量大概在不超过 5000 个,如果超过这个数量,可能引起宕机。如果此时在中午高峰期,有几十万用户访问,每秒有上万个请求查询数据库,则数据库无法承载这种压力。如果绝大部分请求的数据都在缓存中,只有小部分请求通过查询数据库获取到数据,则解决了并发问题。Redis 可以承载每秒约 10w 个请求。数据库每秒最好不超过 2000 个请求。
**缓存的缺点**
缓存与数据库双写不一致、缓存穿透、缓存雪崩、缓存并发竞争等问题。
**Redis 概述**
Redis 是一个高性能的 NoSQL 数据库,支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等。Redis 的单线程模型,需要了解网络通信 socket 知识。
**Redis 和 Memcached 的区别**
Redis 支持复杂的数据结构,Redis 有更多的数据机构,支持丰富的数据操作。Memcached 只支持 key-value 结构,更改值的时候只能先 get 再 set 回去。Redis 原生支持集群模式,在 Redis 3.x 版本中,能够支持 cluster 模式,而 Memcached 没有原生的集群模式,需要客户端的支持来实现集群。
**Redis 的单线程模型**
Redis 基于 reactor 模式开发了网络事件处理器,这个处理器叫做文件事件处理器(file event handler)。Redis 的单线程模型图解,Redis 的网络通信基础认识,Redis 的事件处理器是如何工作的等问题。
**分布式缓存的架构模式**
分布式缓存有多种架构模式,例如主从架构、主备切换、哨兵、Redis cluster 集群、持久化、过期策略等。分布式缓存的架构模式可以根据具体的业务需求选择。
**分布式缓存的应用场景**
分布式缓存可以应用于各种业务场景,例如电商平台、社交媒体、游戏等。分布式缓存可以解决高并发、高性能的业务需求。
**总结**
分布式缓存是解决高并发、高性能业务需求的重要手段,Redis 是一个高性能的 NoSQL 数据库,支持多种数据结构,单线程模型,支持集群模式等特点。分布式缓存的架构模式可以根据具体的业务需求选择,分布式缓存可以应用于各种业务场景。
2020-08-25 上传
2024-04-01 上传
2023-07-22 上传
2023-08-03 上传
2024-03-06 上传
2023-10-20 上传
2023-06-10 上传
2024-06-20 上传
2024-03-28 上传
Code神之手
- 粉丝: 58
- 资源: 4
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解