ShirlyChenLaLaLa / ShirlyChenLaLaLa.github.io

学习前端的一些记录
Other
1 stars 0 forks source link

2018.06.24 FCC上海线下分享会get的一些东西---1 #4

Open ShirlyChenLaLaLa opened 6 years ago

ShirlyChenLaLaLa commented 6 years ago

周末去听了一场FCC线下分享会,去的时候已经开始第二个主题了。

CDN

第一个主题是讲CDN(内容分发网络)的,敖天羽大神讲的哦,回来看了一下ppt,,整理一下知识点。

CDN的优点

  1. 访问加速
  2. 减轻源站负载
  3. 抗住攻击

CDN的应用

jsDelivr ----一个免费开源的CDN解决方案

应用须知

  1. max-age与s-maxage

    • max-age 请求:强制响应缓存者,根据该值,校验新鲜性.即与自身的Age值,与请求时间做比较.如果超出max-age值,则强制去服务器端验证
    • s-maxage(仅为响应标头)
      响应:与max-age的唯一区别是,s-maxage仅仅应用于共享缓存.而不引用于用户代理的本地缓存,等针对单用户的缓存. 另外,s-maxage的优先级要高于max-age.
  2. 缓存命中率 举个🌰 default 这边可以观察x-cache,如果显示“MISS”,说明没有命中CDN缓存,是回源的。显示“HIT”,是命中了CDN缓存。 缓存命中率当然是显示HIT越多越高了。

  3. HTTPS 更加充分保证了网站内容的防篡改、防劫持吧。

  4. 无私钥解决方案

  5. 资源预热 将需要预热的资源推送到 CDN 边缘节点,用户访问时将不需要再回源站,可以直接命中缓存。这样可以加快资源的首次访问,同时缓解突增回源流量给源站造成的压力。

  6. vary

流行的缓存代理服务器,像squid,通常会根据请求的URI和vary response header的内容产生一个hash值。当缓存服务器接收到一个请求的时候,它会根据输入产生一个hash,之后检查缓存看是否已经有这个资源在硬盘上或 者在内存中匹配这个hash值。缓存服务器以此来判断命中与否。而vary response header告诉缓存服务器使用什么判断一个请求的资源是fresh还是stale的。 vary一些可能的值:

Vary: Accept-Encoding 

Vary: Accept-Encoding,User-Agent 

Vary: X-Some-Custom-Header,Host 

Vary: * 
  1. range回源

    Range回源是指客户端通知源站服务器只返回部分内容,以及部分内容的范围。这对于较大文件的分发加速有很大帮助,开启Range回源功能,可以减少回源流量消耗,并且提升资源响应时间。 需要源站支持range请求,即对于http请求头中包含 Range 字段。

    没听到具体的一些讲解,只能照着ppt回来看看,应该有一些不足的地方。。。:bowtie:多多包涵