当前位置:网站首页>PWA 应用 Service Worker 缓存的一些可选策略和使用场景
PWA 应用 Service Worker 缓存的一些可选策略和使用场景
2022-08-08 10:02:00 【InfoQ】
- Network only:内容必须始终是最新的,适用于电商的付款和结帐,余额报表等场景。
- Network falling back to cache:优先提供最新的内容。 但是,如果网络出现故障或不稳定,则可以提供稍旧的内容。适用场景有及时的数据,价格和费率(需要免责声明),订单状态等。
- Stale-while-revalidate:可以立即提供缓存内容,但以后应该使用更新的缓存内容。适用场景有新闻提要,产品列表页面,留言等。
- Cache first, fall back to network:内容是非关键的,可以从缓存中提供以提高性能,但 Service Worker 应偶尔检查更新。适用于 App shells 和 Common resources.
- Cache only: 适用于内容极少发生变化的静态资源。
{
"index": "/index.html",
"assetGroups": [
{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html",
"/*.css",
"/*.js",
"/manifest.webmanifest"
]
}
}
],
"dataGroups": [
{
"name": "basesites",
"urls": [
"*/basesites?fields=baseSites\\(uid,defaultLanguage\\(isocode\\),urlEncodingAttributes,urlPatterns,stores\\(currencies\\(isocode\\),defaultCurrency\\(isocode\\),languages\\(isocode\\),defaultLanguage\\(isocode\\)\\),theme,defaultPreviewCatalogId,defaultPreviewCategoryCode,defaultPreviewProductCode\\)*"
],
"cacheConfig": {
"maxSize": 1,
"maxAge": "1d",
"strategy": "performance"
}
}
]
}
./node_modules/.bin/ngsw-config ./dist/<project-name> ./ngsw-config.json [/base/href]
dist/<project-name>
**
: 匹配 0 个或多个路径段
*
: 匹配 0 个或多个字符,不包括 /
?
: 只匹配一个字符,不包括 /
!
:prefix 将模式标记为否定,这意味着只包含与模式不匹配的文件
/**/*.html
: 匹配所有 HTML 文件
/*.html
:匹配根目录下的 HTML 文件
!/**/*.map
: 排除所有的 sourcemaps
边栏推荐
- 快速定位线上慢 SQL 问题,掌握这几个性能排查工具可助你一臂之力
- 高并发下秒杀商品,你必须知道的9个细节
- hdu4635 Strongly connected (tarjan calculates strongly connected components + shrink points + ideas)
- Elasticseach实践1
- MySQL源码解析之执行计划
- 利用图像二维熵实现视频信号丢失检测(Signal Loss Detection)
- 数据可视化:随时间变化的效果图
- 交换两个整型变量的三种方法
- Forward Propagation and Back Propagation
- 分门别类输入输出,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本数据类型和输入输出EP03
猜你喜欢
Loadrunner12.0.2 installation and Chinese language pack installation (Chinese)
嵌入式C编程中错误异常该如何统一处理?
Database Tuning: The Impact of Mysql Indexes on Group By Sorting
snmptrapd+snmptt接收告警并用py脚本发送
HMS Core分析服务智能运营6.5.1版本上线
[Image Classification] 2021-CoAtNet NeurlPS
Classification of software testing
Recommended download software
COMSOL Multiphysics 6.0 software installation package and installation tutorial
功夫再高也怕菜刀,产品经理的那些事
随机推荐
2万字50张图玩转Flink面试体系
code inspection tool
MySQL redo log和undo log
[Deep Learning] Curriculum Learning
继承关系下构造方法的访问特点:
Interviewer: Have you ever used a lock at work?Talk about the advantages, disadvantages and usage scenarios of optimistic locking and pessimistic locking
idea installation steps
The entity List to excel
快速定位线上慢 SQL 问题,掌握这几个性能排查工具可助你一臂之力
HMS Core分析服务智能运营6.5.1版本上线
snmptrapd+snmptt接收告警并用py脚本发送
Loadrunner12.0.2安装及中文语言包安装(汉化)
重载与重写有什么区别?
d实验新异常
分门别类输入输出,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本数据类型和输入输出EP03
利用图像二维熵实现视频信号丢失检测(Signal Loss Detection)
Detailed Explanation of Gradient Vanishing and Gradient Explosion Problems
MySQL中的锁机制详解
牛客收藏上万的神作!这份阿里P8手写的MySQL主从原理手册真的牛
左益豪:用代码创造一个新世界|OneFlow U