查询性能优化,多级缓存设计
-
-
redis 缓存
-
本地缓存
-
热点nginx lua 缓存
-
用快速存取设备, 用内存
-
将缓存推到离用户最近的地方
-
去清理脏缓存
-
redis 缓存
-
热点本地缓存
-
nginx proxy cache缓存
-
nginx lua 缓存
-
1.nginx 本地缓存,抗的是热数据的高并发访问。 一般来说,商品的购买热点数, 比如每天购买 苹果手机 华为手机 海尔 知名品牌总是比较多。这就是一些热点数据,利用nginx本地缓存,由于我们经常访问。 所以可以被锁定到nginx的本地缓存内。
- 2.redis 分布式缓存 , 主要抗的是很高的离散访问。 支撑海量的数据。 高并发的访问。 高可用的服务redis缓存大量的数据。 最完整的数据和缓存。 可用性 非常好的提供稳定的服务 。
-
3.nginx 本地内存有限,能缓存热点数据,有限。 能缓存一些 苹果手机 耐克鞋子。。 相对与不是热点的数据。可能流量就走到了。 redis那里。 redis 利用 cluster 多个master写入。 读的话我们从slave 读。 横行一种扩容。
-
4.tomcat jvm 堆内存, 主要是抗住 redis大规模灾难, 如果redis出现了大规模宕机。 导致nginx大量流量直接涌入数据生成服务。。那么最后的tomcat 堆内存至少可以在扛一下。 不至于让我们数据库 裸奔。