npm 包 cacheswitcher 使用教程

阅读时长 3 分钟读完

nginx 缓存是 Web Server 常见的缓存方案,其自身的缓存机制足以满足大部分网站的需求。但有一些站点的数据访问频率极高,缓存命中率不太高,而且不同地域访问不同的 CDN 服务商,这些站点可能需要调用某种方案在机器本地开启缓存。

此时可以考虑使用 cacheswitcher - 一种可以开启本地本地缓存方案的中间件。

安装

使用

-- -------------------- ---- -------
----- ---- - ---------------
----- ------------- - ------------------------

----- --------- - -------------
----- ------ - ----------------------- ---- -- -
  ------------------ ---- ------------
  ------------------
  -------------- -------
--

-------------------

一旦添加了 cacheswitcher 中间件,每个请求都会在静态文件存储路径中查找匹配的文件,若匹配,则返回给客户端,否则执行后续的操作。

配置

常见的配置有以下几个:

  • cachePath: 指定缓存静态文件的文件夹路径,例如:/cache/path
  • defaultExpireTime: 指定缓存的默认时长,例如:60 * 60 * 24 * 30
  • cacheRules: 缓存控制规则,例如:

这个配置意味着:静态文件夹下的 /api/* 目录下的文件比如图片将不做缓存,而访问 /static/* 目录下的文件时缓存时间为一年,其间请求不再与服务器交互。

原理

cacheswitcher 会拦截请求并查找是否有静态文件匹配。如果存在该文件,则直接返回静态文件并结束整个过程。否则,执行通常的调用栈。

学习与指导意义

cacheswitcher 具有一定程度的灵活性,可以根据自己的需求来定制缓存规则。如果要进行细粒度的缓存控制,只需给予更多时间去实现 cacheRules。

另外,cacheswitcher 使得前段开发人员可以直接操作缓存,更好的理解 nginx 等其他缓存基础知识。在促进自身能力不断前行的同时,也推动了前端开发在优化和改进网站缓存管理方面的发展。

示例代码

查看 Github 代码库

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066c90ccdc64669dde5804

纠错
反馈