Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wushizhenking
advanced-java
提交
a7f161ac
A
advanced-java
项目概览
wushizhenking
/
advanced-java
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
advanced-java
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
a7f161ac
编写于
11月 12, 2019
作者:
Y
Yang Libin
提交者:
GitHub
11月 12, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update redis-caching-avalanche-and-caching-penetration.md
上级
5b8a84fa
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
3 addition
and
3 deletion
+3
-3
docs/high-concurrency/redis-caching-avalanche-and-caching-penetration.md
...rrency/redis-caching-avalanche-and-caching-penetration.md
+3
-3
未找到文件。
docs/high-concurrency/redis-caching-avalanche-and-caching-penetration.md
浏览文件 @
a7f161ac
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
大约在 3 年前,国内比较知名的一个互联网公司,曾因为缓存事故,导致雪崩,后台系统全部崩溃,事故从当天下午持续到晚上凌晨 3~4 点,公司损失了几千万。
大约在 3 年前,国内比较知名的一个互联网公司,曾因为缓存事故,导致雪崩,后台系统全部崩溃,事故从当天下午持续到晚上凌晨 3~4 点,公司损失了几千万。
缓存雪崩的事前事中事后的解决方案如下
。
缓存雪崩的事前事中事后的解决方案如下
:
-
事前:redis 高可用,主从+哨兵,redis cluster,避免全盘崩溃。
-
事前:redis 高可用,主从+哨兵,redis cluster,避免全盘崩溃。
-
事中:本地 ehcache 缓存 + hystrix 限流&降级,避免 MySQL 被打死。
-
事中:本地 ehcache 缓存 + hystrix 限流&降级,避免 MySQL 被打死。
-
事后:redis 持久化,一旦重启,自动从磁盘上加载数据,快速恢复缓存数据。
-
事后:redis 持久化,一旦重启,自动从磁盘上加载数据,快速恢复缓存数据。
...
@@ -46,5 +46,5 @@
...
@@ -46,5 +46,5 @@
不同场景下的解决方式可如下:
不同场景下的解决方式可如下:
-
若缓存的数据是基本不会发生更新的,则可尝试将该热点数据设置为永不过期。
-
若缓存的数据是基本不会发生更新的,则可尝试将该热点数据设置为永不过期。
-
若缓存的数据更新不频繁,且缓存刷新的整个流程耗时较少的情况下,则可以采用基于 redis、zookeepe
r等分布式中间件的分布式互斥锁,或者本地互斥锁以保证仅少量的请求能请求数据库并重新构建缓存,其余线程则在锁释放后能访问到新缓存
-
若缓存的数据更新不频繁,且缓存刷新的整个流程耗时较少的情况下,则可以采用基于 redis、zookeepe
r 等分布式中间件的分布式互斥锁,或者本地互斥锁以保证仅少量的请求能请求数据库并重新构建缓存,其余线程则在锁释放后能访问到新缓存。
-
若缓存的数据更新频繁或者缓存刷新的流程耗时较长的情况下,可以利用定时线程在缓存过期前主动的重新构建缓存或者延后缓存的过期时间,以保证所有的请求能一直访问到对应的缓存
-
若缓存的数据更新频繁或者缓存刷新的流程耗时较长的情况下,可以利用定时线程在缓存过期前主动的重新构建缓存或者延后缓存的过期时间,以保证所有的请求能一直访问到对应的缓存
。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录