25 February 2014

JS属于静态资源,一般都会部署到CDN上。CDN会缓存源服务器返回给浏览器的JS文件,并用缓存的副本去serve后续的浏览器请求,直至缓存过期,或者源服务器主动通知CDN更新,或者浏览器发送一个全新的URL为止。即便用户清空浏览器缓存,指定cache-control: no-cache,CDN也有可能用缓存副本而不是去源服务器请求最新的文件serve浏览器。

这就涉及到JS代码上线的版本更新问题。CDN缓存虽好,但是如何在上线时让浏览器/CDN缓存尽快失效却是个问题。

  1. 覆盖式版本更新

  2. 增量式版本更新

  3. 全量式+覆盖式


未完待续。。。



blog comments powered by Disqus