11-8 热点key的重建优化
使用缓存首先从缓存中获取,如果获取不到就从数据源db中获取,如果获取到做一个回写(缓存重建)
缓存重建问题:
(1)如果重建的key是一个热点key,访问量很大。比如微博一个大V发重要消息,这个key访问量很大
(2)重建过期时间长,比如执行一个复杂的sql,或者调用一个很慢api。在重建过程由很多线程都会参与重建,导致获取过程很慢。因为每一个线程都要执行一边重建过程,这个重建过程可能是底层一个重建接口,或者api是数据库。由于是热点key,导致对数据库底层数据源有很大压力。
有大量线程都在做缓存数据源,查询数据源,1,对数据库数据源有很大压力,2,响应速度很慢
存在大量线程被夯住的问题
不会向互斥锁一样有一个等待的过程,线程无需等待
而且可以保证有一个线程完成缓冲的重建,以及数据的查询
问题:存在数据不一致的情况,因为没有等到缓存重建完成拿到老的结果
nginx缓存重建
11-8 热点key的重建优化相关推荐
- 面试精讲之面试考点及大厂真题 - 分布式专栏 11 Redis热点key大Value解决方案
11 Redis热点key大Value解决方案 时间像海绵里的水,只要你愿意挤,总还是有的. --鲁迅 引言 上期分析了<Redis 雪崩,穿透,击穿三连问>,看了我的分析后回答面试官肯定 ...
- 20万用户同时访问一个热点Key,如何优化缓存架构?
来源:石杉的架构笔记(ID:shishan100) 这篇文章,咱们来聊聊热点缓存的架构优化问题.使用缓存集群的时候,最怕的就是热 Key.大 Value 这两种情况. 一.为什么要用缓存集群 啥叫热 ...
- 如果20万用户同时访问一个热点缓存,如何优化你的缓存架构?
点击上方"蓝字", 右上角选择"设为星标" 周一至周五上午11点45!精品技术文章准时送上! 本文转载自公众号:石杉的架构笔记 目录 (1)为什么要用缓存集群 ...
- Redis 热点 Key 如何发现?又该如何解决?
点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 来源:http://t.cn/EogMSP2 热点Key问题产生的原因大致有以下两种: 1.用户消费的 ...
- Redis缓存雪崩、缓存穿透、热点Key解决方案和分析
转载自 https://blog.csdn.net/wang0112233/article/details/79558612 https://www.sohu.com/a/230787856_231 ...
- Redis缓存穿透-热点缓存并发重建-缓存与数据库双写不一致-缓存雪崩
解决缓存问题 1.解决Redis把内存爆满的三种方法 1.1 定期删除 1.2 惰性删除 1.3 内存淘汰策略 2. 缓存穿透--缓存击穿--缓存雪崩 3. 如何解决线上缓存穿透问题 3.1 缓存击穿 ...
- Redis热点Key发现及常见解决方案
热点Key问题产生的原因大致有以下两种: 1.用户消费的数据远大于生产的数据(热卖商品.热点新闻.热点评论.明星直播). 在日常工作生活中一些突发的的事件,例如:双十一期间某些热门商品的降价促销,当这 ...
- redis4.0之基于LFU的热点key发现机制
前言 业务中存在访问热点是在所难免的,redis也会遇到这个问题,然而如何发现热点key一直困扰着许多用户,redis4.0为我们带来了许多新特性,其中便包括基于LFU的热点key发现机制. Leas ...
- 如何发现 Redis 热点 Key ,解决方案有哪些?
一.热点问题产生原因 热点问题产生的原因大致有以下两种: 1.1 用户消费的数据远大于生产的数据(热卖商品.热点新闻.热点评论.明星直播). 在日常工作生活中一些突发的的事件,例如:双十一期间某些热门 ...
最新文章
- ExecutorService与Executors例子的简单剖析(转)
- laravel mysql注入_laravel中如何利用反射实现依赖注入
- 2022泰晤士最新世界大学排名惹争议,这所985高校爆冷门!
- .Net Core中利用TPL(任务并行库)构建Pipeline处理Dataflow
- MyBatis源码-解读Executor的三个实现类之BatchExecutor(批处理执行器)
- IAR环境下STM32+IAP方案的实现(转)
- 在Spring中嵌入HSQLDB服务器实例
- java显示时间_Java如何显示日期和时间?
- sentry + vue实现错误日志监控
- 路由器在多个OSPF进程下的路由学习问题
- python学到什么程度可以找到工作-月薪2万+的Python Web岗,学到什么程度能找到工作?...
- C++ Primer Plus学习(一)—— 基础知识
- Txt格式的电子书解析
- LoRaWAN协议格式
- Pycharm 远程连接服务器(ssh)运行深度学习代码 | 详细步骤
- 再战高端智能电动化,错失先机的长安能靠华为“翻盘”?
- 手机拍的照片计算机内存不足怎么办,电脑内存不足怎么办
- 第一章 kotlin基础知识
- 基于vue和nodejs毕业设计电影购票微信小程序影院
- 大数据的五大关键技术
热门文章
- paper 134:结构张量structure tensor(二)
- Python算法:推导、递归和规约
- NHibernate 3.x新功能实践(二) QueryOver(下)
- 配置windows 2003 ×××服务器
- C++如何禁止函数的传值调用
- gin mongodb restful api设计: 动态的patch接口
- Java中 输入字符串的时候next()和nextLine()有什么区别
- linux命令快速手记 — 让手指跟上思考的速度(四)
- [最小生成树][Dij] Jzoj P5818 做运动
- Oracle 索引失效的六大限制条件