大家好,我是Tom哥~
阿里P7技术专家,一个不喜欢内卷的程序员~
给大家送过年的干货了,硬不硬,自己看,
缓存一直是我们工作中的老朋友了,不管是常规功能架构还是各种大促活动,都离不开缓存的身影。
而众多的缓存框架中,Redis 又是一枝独秀,凭着这优异的性能、丰富的生态、活跃的社区、以及低成本的开发门槛,深受广大码仔的喜爱。
可以毫不客气的说,Redis 是我们的第一 “女友”,没有它我们的工作就会黯然失色。
既然 Redis 这么重要,那 Tom哥 就花了几个大周末,熬了几个大通宵,把Redis的核心技术点整理了个脑图,图太大了,文章后台上传报错,这里只能放了个缩略图,给大家直观感受下
下图 ↓↓↓↓ 只是部分内容,原图比这个大很多…大很多…大很多…
想要原图的可以私聊我微信,【chixuegao1234】 ,也可以扫描下方的二维码,微信加我
接下来,我把一些核心内容做概要剖析:
关于Redis 的单线程,当然这个单线程主要指网络 IO 和 数据读写操作是由一个线程完成,而数据清理,持久化,集群数据同步 ,额外创建其他线程
为什么采用单线程?
答案:避免多线程的并发锁控制问题;上下文切换的资源损耗;多线程开发代码复杂,可维护性差。
关于Redis 的特性,简单归纳为三块内容:
性能高,支持数十万的QPS
丰富的数据结构类型
支持 pub/sub 类型
如何避免数据丢失?
Redis 集群演化史
我们知道Redis的集群有三种方案:
主从模式
Sentinel(哨兵)模式
Redis Cluster模式
Redis 主从数据同步
Redis 主从节点宕机,如何处理?
我们主动删除了大量的缓存数据,但内存使用依然很高?
缓存内存空间不足,发生置换策略
Redis 的事务机制
Redis 的应用场景
缓存的七大经典问题
其他
最后福利
关于Redis 缓存,之前也总结了一些文章,这里一并做了汇总,希望大家加深Redis的全面理解,工作使用中也能更加的得心应手。
文章列表:
1、亿级系统的Redis缓存如何设计???
2、什么是布隆过滤器?如何解决高并发缓存穿透问题?
3、高手过招, 为什么 Redis Cluster 是16384个槽位?
4、字节一面:Redis主节点的Key已过期,但从节点依然读到过期数据…
5、读者诉苦:Redis 宕机,数据丢了,老板要辞退我
6、字节一面:Redis主节点宕机,如何处理?
7、【硬核】秒杀活动技术方案,Redis申请32个G,被技术总监挑战了…
8、Redis 实战篇:巧用数据类型实现亿级数据统计
9、Redis 实战篇:通过 Geo 类型实现附近的人邂逅女神
10、redis分布式锁过期了但业务还没有执行完,怎么办?
11、Redis分布式锁,你用对了吗?
12、Redis缓存那点破事 | 绝杀面试官 25 问!
13、Redis 高可用篇:Cluster 集群能支撑的数据有多大?
14、Redis故障主从切换演示
15、线上问题排查,Redis 频繁重连…
关于我:Tom哥,前阿里P7技术专家,出过专利,多年大厂实战经验。欢迎关注,我会持续输出更多经典原创文章,为你大厂助力。
欢迎小伙伴找Tom哥唠嗑聊天, 技术交流,围观朋友圈,人生打怪不再寂寞。
推荐阅读: 《我想去大厂列》(包含Java、MySQL、Redis、MQ消息队列、TCP网络、项目亮点、团队管理等)
推荐阅读: SpringBoot 生态系列,JPA、ElasticSearch、Kafka、Redis等几十个主流开源框架