JavaWeb开发思维导图之——Redis高级之缓存预热(165)

一 概述

  • 缓存预热
  • 宕机问题
  • 问题排查
  • 解决方案

二 缓存预热

1
2
3
1-就是系统启动前, 提前将相关的缓存数据加载到缓存系统
2-避免在用户请求的时候, 先查询数据库, 然后再将数据缓存的问题
3-用户直接查询事先被预热的缓存数据

三 宕机问题

1
服务器启动后迅速宕机

四 问题排查

1
2
1-请求数量较高
2-主从之间数据吞吐量较大, 数据同步操作频度较高

五 解决方案

5.1 前置准备工作

1
2
1-日常例行统计数据访问记录, 统计访问频度较高的热点数据
2-利用lru数据删除策略, 构建数据留存队列(例如: storm与kafka配合)

5.2 准备工作

1
2
3
1-将统计结果中的数据分类, 根据级别, redis优先加载级别较高的热点数据
2-利用分布式多服务器同时进行数据读取,提速数据加载过程
3-热点数据主从同时预热

5.3 实施

1
2
1-使用脚本程序固定触发数据预热过程
2-如果条件允许,使用了cdn(内容分发网络), 效果会更好

六 思维导图

javaweb-xmind-redis-hig-cache-hot-15