nodejs学习: lru-cache-fs
基于 lru-cache 的文件操作包
背景
因为最近想实现一个 ntl 的记录上次执行命令的功能,所以,看了一下 ntl 源码,发现核心实现就是这个包,也是基于 lru 实现的 lru-fs
直接应用的作品是 yaml-command-cli: https://github.com/afeiship/yaml-command-cli
安装
npm i -S lru-cache-fs
基本操作、用法
- set: 设置值
- get: 取值
- cache.fsDump: 将值持久化到文件里(默认在这里: ~/Library/Caches/cache-nodejs)
基本用法
const Cache = require("lru-cache-fs");
const cache = new Cache({
max: 100,
cacheName: "cache", // filename ref to be used
});
cache.set("some-new-item", { name: "aric", age: 108, }); // sets new item and stores cache sync to fs
cache.fsDump();
cache.get("some-new-item");
自己的 storage 使用
# 安装
npm i -S @jswork/next-lru-fs-storage
// 使用
const NxLruFsStorage = require('@jswork/next-lru-fs-storage')
const cache = new NxLruFsStorage('YOUR_CACHE_KEY');
// apis
cache.set('foo','bar')
cache.get('foo')
cache.sets({ 'test':'test-value' })
cache.gets()