缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。php
此次主要是分享下本身以为比较通用的一个缓存策略的架构方案,也是比较 容易理解的.欢迎吐槽.缓存
有更牛逼的也欢迎你们说下:服务器
缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。架构
(1) 将数据写入/读取速度更快的存储(设备);并发
(2) 将数据缓存到离应用最近的位置;异步
(3) 将数据缓存到离用户最近的位置。分布式
在分布式系统中,缓存的应用很是普遍,从部署角度有如下几个方面的缓存应用。高并发
(1) CDN缓存;性能
(2) 反向代理缓存;学习
(3) 分布式Cache;
(4) 本地应用缓存;
经常使用中间件:Varnish,Ngnix,Squid,Memcache,Redis,Ehcache等;
缓存的内容:文件,数据,对象;
缓存的介质:CPU,内存(本地,分布式),磁盘(本地,分布式)
缓存设计须要解决如下几个问题:
(1) 缓存什么?
哪些数据须要缓存:1.热点数据;2.静态资源;
(2) 缓存的位置?
CDN,反向代理,分布式缓存服务器,本机(内存,硬盘)
(3) 如何缓存的问题?
1.固定时间:好比指定缓存的时间是30分钟;
2.相对时间:好比最近10分钟内没有访问的数据;