19 February 2014

上篇是对JS模块化开发的讲述,下篇集中讨论JS代码部署工作。


代码部署是产品开发的最后一个环节,也是最需要谨慎操作的环节,要让更新之后的代码在生产环境中尽快生效,同时尽量避免出现故障。一个完备的部署系统还要支持故障时快速回滚到最近正常状态的功能。

JS代码运行在浏览器端,属于静态资源,都涉及HTTP缓存问题。HTTP缓存涉及多个层次:浏览器层,CDN层,源服务器层。如何让不同层次的缓存失效是部署系统在上线时要面对的问题。这就是上线版本控制的问题。

对JS代码的请求,基本上都来自于HTML/DOM中的script标签的src属性值。JS代码能否生效,还与HTML页面script标签的src是否同时更新密切相关,即页面是否与JS一同发布。如果一同发布,只需要在JS上线后更新页面上script的src属性,使其主动请求新上线的代码;如果只是JS发布,页面不变,那么版本更新机制就要依靠JS自身来实现。


未完待续。。。 TODO 版本控制



blog comments powered by Disqus