除了上面说的工程化的合并http,gzip,keep-alive,现代移动端web中由于webview缓存失效,用户刷新304,以及频繁业务迭代造成的代码更新造成了移动端的缓存是个很值得优化的点。对此美团,百度,滴滴等互联网公司采用了LocalStorage--对就是那个用来存本地数据的玩意~ 结合工程化手段替代webview本身文件缓存机制的优化。大概原理就是所有文件缓存利用js写入LocalStorage进行控制,这样即使用户刷新也不会有304请求。多页面间有模块复用的话,利用js控制可以将缓存细化到AMD模块级别,达到模块级别的共享复用,最极限的节省带宽和提高加载速度。我们的业务已经全线铺开了这套工程化方案。
具体的解决方案我在我们的专栏中发了文章,移动端性能想优化到极致的同学可以移步这里--LsLoader 移动WEB工程化缓存方案 - 美团外卖前端技术栈 - 知乎专栏. 如果有好的IDEA可以来专栏交流。 |