标签:sdn 查找 art 分享图片 any 数据库 csdn 适合 比例
一。什么数据适合缓存
需要从三个方面分析
1. 数据访问频率 ↑↑
2. 读写比例 读多与少 ↑
3. 数据一致性 ↑↓
二。 什么是缓存击穿
在高并发下,多线程同时查询同一个资源,如果缓存中没有这个资源,那么这些线程都会去数据库查找,对数据库造成极大压力,缓存失去存在的意义.打个比方,数据库是人,缓存是防弹衣,子弹是线程,本来防弹衣是防止子弹打到人身上的,但是当防弹衣里面没有防弹的物质时,子弹就会穿过它打到人身上.
三。 如何解决
1. 定时更新
适合key 比较集中的
2. 检查更新
每次查询检查是否需要更新
缺点: 缓存依赖于请求, 没有请求就不换更新缓存
3. 分级缓存
使用两个缓存池 l1, l2 l1未命中数据, 加锁访问数据库, 其他请求访问l2, 数据响应后, 更新l1 ,l2缓存池
4. 加锁
1. 访问缓存时加锁
2. 缓存未命中时加锁
3. 从缓存未命中后加锁, 双重取缓存
4. 互斥锁
原文: https://blog.csdn.net/sanyaoxu_2/article/details/79472465
标签:sdn 查找 art 分享图片 any 数据库 csdn 适合 比例
原文地址:https://www.cnblogs.com/lihuanghe/p/9775597.html