离线Web应用的3种加载策略
1、离线(即从disk_cache中加载)作为在线加载的fallback
当在线load过程遇到较大的IO延迟时,用户体验比较差
2、优先从离线加载,但是同时可选地,后台启动在线加载,如果在线load发现有新版本,则替换掉离线的版本
(当然这里后半部分处理如果太复杂可以不做)
3、同时启动离线(磁盘IO)和在线(网络IO),最先返回的最先加载
这种方式让我想起了基于JavaScript Promise的汇聚同步,单同样也会遇到实现复杂性问题
当然,第一步考虑最简单的方案是:基于Chromium内核现有的API判断网络是否处于离线状态,如果是,则直接从disk_cache离线加载,不考虑同时检测在线版本的处理。