# nncache **Repository Path**: npm-packages/nncache ## Basic Information - **Project Name**: nncache - **Description**: 使用node.js实现的缓存服务器,仿Redis的主要功能 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-08-11 - **Last Updated**: 2023-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NNCache 使用 node.js 实现的 key-value 缓存服务器,仿 Redis 的主要功能 包括服务端与客户端,能持久化到文件 ### 主要接口: 1. set 2. get 3. del 4. sub 5. unsub 6. saveToFile 7. getConnectStatus ### server demo ```javascript const { createServer } = require("nncache"); createServer({ port: 90, //监听端口 autoSaveToFile: true, //是否持久化 saveToFileInterval: 5000, //自动保存间隙 debug: true, //输出调试信息 subEnable: false, //是否开启订阅 dbFilePath: "./db.json", //数据库文件 }); ``` ### client demo ```javascript const { createClient } = require("nncache"); async function main() { let cache = createClient({ url: "ws://localhost:90", }); cache.set("cbf", 123); let d = await cache.get("cbf"); console.log(d); setInterval(function () { cache.set("cbf2", new Date().valueOf()); }, 1000); let i = 0; cache.sub("cbf2", function (json) { // i++; // if (i == 20) { // cache.unsub('cbf2'); // return console.log("取消订阅"); // } console.log("收到订阅:", json); // console.log(json); }); } main(); ```