Koa-static 设置静态文件缓存

简介: 缓存机制

之前搭建博客的时候,没有考虑静态资源缓存的情况,

那时候自认为利用浏览器自己的缓存机制就好了,

今天添加博客友联时,一位好心的博友提醒我说我的博客没有添加静态资源缓存

我当时一头雾水,这个不是浏览器自己的机制吗?

然后经过一波查询,发现自己的理解一直错了。

所谓的缓存机制就是一些资源请求的时候,设置了返回头,

Cache-Control

这种情况是没有设置缓存的。

每次资源相当于重新去拉取一次。

设置了之后,浏览器会根据这个字段进行数据的缓存,然后通过status code 中的 from memory cache

得知 我们请求时缓存的数据了。

我们的后端用的是Koa

静态文件的组件为koa-static,

刚好koa-static提供了缓存的参数,

我们直接加上即可:

const static = require("koa-static");
//设置静态资源的路径
const staticPath = "./public";
let opts = {
maxage: 2592000000, //静态资源30天缓存 实际上 = 2592000秒
};
app.use(static(path.join(__dirname, staticPath), opts));
复制代码
koa-static的版本的版本号为5.0.0

参考文档:https://www.npmjs.com/package/koa-static/v/5.0.0

然后关于浏览器缓存机制的文章:https://blog.csdn.net/weixin_47450807/article/details/122680032

完事我们的博客速度 咔咔的 快了很多
作者: Bill 本文地址: http://biaoblog.cn/info?id=1672211747336

版权声明: 本文为原创文章,版权归 biaoblog 个人博客 所有,欢迎分享本文,转载请保留出处,谢谢!

相关文章
|
2月前
|
缓存 安全 UED
网站图片缓存设置不当可能会导致哪些问题?
【10月更文挑战第18天】网站图片缓存的合理设置至关重要,需要综合考虑图片的性质、更新频率、用户体验、服务器性能等多方面因素,以避免出现上述各种问题,确保网站的正常运行和用户信息的安全。
|
2月前
|
缓存 监控 定位技术
|
5月前
|
缓存 Java Spring
Java本地高性能缓存实践问题之Caffeine中设置刷新机制的问题如何解决
Java本地高性能缓存实践问题之Caffeine中设置刷新机制的问题如何解决
155 1
|
2月前
|
存储 缓存 监控
网站的图片资源是否需要设置缓存?
【10月更文挑战第18天】网站的图片资源一般是需要设置缓存的,但要根据图片的具体特点和网站的需求,合理设置缓存时间和缓存策略,在提高网站性能和用户体验的同时,确保用户能够获取到准确、及时的图片信息。
|
2月前
|
Web App开发 缓存 UED
如何设置浏览器的缓存策略?
【10月更文挑战第23天】通过合理地设置浏览器的缓存策略,可以在提高网页性能、减少网络流量的同时,确保用户能够获取到最新的内容,从而提升用户体验和网站的性能优化效果。
129 4
|
5月前
|
存储 缓存 NoSQL
【Azure Redis 缓存 Azure Cache For Redis】如何设置让Azure Redis中的RDB文件暂留更久(如7天)
【Azure Redis 缓存 Azure Cache For Redis】如何设置让Azure Redis中的RDB文件暂留更久(如7天)
|
5月前
|
缓存 前端开发 Java
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
|
15天前
|
存储 缓存 NoSQL
解决Redis缓存数据类型丢失问题
解决Redis缓存数据类型丢失问题
158 85
|
3月前
|
消息中间件 缓存 NoSQL
Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。
【10月更文挑战第4天】Redis 是一个高性能的键值对存储系统,常用于缓存、消息队列和会话管理等场景。随着数据增长,有时需要将 Redis 数据导出以进行分析、备份或迁移。本文详细介绍几种导出方法:1)使用 Redis 命令与重定向;2)利用 Redis 的 RDB 和 AOF 持久化功能;3)借助第三方工具如 `redis-dump`。每种方法均附有示例代码,帮助你轻松完成数据导出任务。无论数据量大小,总有一款适合你。
85 6
|
12天前
|
缓存 监控 NoSQL
Redis经典问题:缓存穿透
本文详细探讨了分布式系统和缓存应用中的经典问题——缓存穿透。缓存穿透是指用户请求的数据在缓存和数据库中都不存在,导致大量请求直接落到数据库上,可能引发数据库崩溃或性能下降。文章介绍了几种有效的解决方案,包括接口层增加校验、缓存空值、使用布隆过滤器、优化数据库查询以及加强监控报警机制。通过这些方法,可以有效缓解缓存穿透对系统的影响,提升系统的稳定性和性能。