文章目录
6-1 静态资源CDN引入
静态请求CDN
用户将静态资源数据请求到ECS服务器
,ECS服务器解析到阿里云的CDN中,CDN可以理解为一个无限大的内容磁盘缓存,本身没有文件存储。当用户访问getItem的一个静态资源文件的时候,会根据路由规则查看本地是否有这样的文件,如果有直接返回,没有就回源到源站,回源到下面的OSS
中获取静态资源文件。
CDN一边返回对应的文件,一边将文件按照http指示的生命周期缓存起来,以便下次用户访问时,直接返回。
整个项目的架构:
6-3 Cache Control响应头
Cache Control状态标志着缓存的策略
- private:客户端可以缓存
- public:客户端和代理服务器都可以缓存(代理服务器指的是从客户端到服务器经过所有的中间服务器结点,比如nginx,CDN,正向代理服务器等)
- max-age=xxx:缓存的内容将在xxx秒后失效
- no-cache:强制向服务端再验证一次(客户端缓存在本地,下次使用缓存时要向服务器请求验证是否可以使用缓存)
- no-store:不缓存请求的任何返回内容
客户端向服务器验证是如何做的呢?
有效性判断
-
ETag:资源唯一标识
将请求进行MD5或Hash的加密,生