与 Redis 和 Memcached API 兼容的内存数据存储,可直接替换两者使用。
microlinkhq/keyvhq
一个 Node.js 键值存储库,支持 TTL 过期,并可通过适配器接入 Redis、MongoDB、SQLite 等多种后端。
- Star
- 446
- Fork
- 20
- 未关闭 Issue
- 0
- 最近提交
- 2个月前
这是什么?
Keyv 是一个轻量的 Node.js 键值存储库,支持为数据设置可选的过期时间(TTL)。默认将数据保存在内存中的 Map 里,也可以替换为存储适配器,把数据持久化到 Redis、MongoDB、MySQL、PostgreSQL、SQLite 或文件等后端。任何实现了 Map 接口的对象也可以作为存储使用。
接口基于 Promise,提供 set、get、has、delete、clear 等方法。命名空间(namespace)允许多个实例共用同一个数据库而互不冲突,清空其中一个也不影响其他数据。默认支持所有 JSON 类型和 Buffer,也可以自定义序列化函数来处理其他数据类型。数据库出错时不会直接导致应用崩溃。
项目还提供压缩、最大体积限制、函数缓存(memoize)、多存储组合和指标统计等装饰器。它也便于其他模块直接暴露 cache 选项并把它透传给 Keyv。
核心功能
- 01默认使用内存存储,并支持多种数据库适配器。
- 02支持单个键和全局默认的 TTL 过期时间。
- 03命名空间可在共享后端中隔离键,并可单独清空。
- 04开箱即用,支持所有 JSON 类型和 Buffer。
- 05可自定义序列化与反序列化函数。
- 06任何实现了 Map 接口的对象都可作为存储使用。
适用场景
- 为 Node.js 应用添加基于 TTL 的缓存,并以 Redis 或其他数据库作为后端。
- 在客户端库中缓存 HTTP 响应。
- 无需自行编写数据层,即可把键值数据持久化到 SQLite 或 PostgreSQL。
- 在可复用的 npm 模块中内置缓存支持,允许使用者自行指定存储。
快速上手
- 1
安装核心包
npm install @keyvhq/core --save - 2
可选:安装存储适配器,例如 Redis
npm install @keyvhq/redis --save - 3
创建 Keyv 实例并进行设置、读取和删除键值的操作
使用前须知
- 部分功能和适配器依赖 Redis、MongoDB 或 PostgreSQL 等外部数据库或服务,需要自行部署运行。
标签
常见问题
- keyvhq 是什么?
- 一个 Node.js 键值存储库,支持 TTL 过期,并可通过适配器接入 Redis、MongoDB、SQLite 等多种后端。 Keyv 是一个轻量的 Node.js 键值存储库,支持为数据设置可选的过期时间(TTL)。默认将数据保存在内存中的 Map 里,也可以替换为存储适配器,把数据持久化到 Redis、MongoDB、MySQL、PostgreSQL、SQLite 或文件等后端。任何实现了 Map 接口的对象也可以作为存储使用。
- keyvhq 可以免费使用吗?用的什么许可证?
- keyvhq 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- keyvhq 还在维护吗?
- 半年内有更新。keyvhq 最近一次提交是在 2026年8月27日。
- keyvhq 适合用来做什么?
- 为 Node.js 应用添加基于 TTL 的缓存,并以 Redis 或其他数据库作为后端。 在客户端库中缓存 HTTP 响应。 无需自行编写数据层,即可把键值数据持久化到 SQLite 或 PostgreSQL。 在可复用的 npm 模块中内置缓存支持,允许使用者自行指定存储。
- keyvhq 怎么安装和运行?
- 安装核心包: npm install @keyvhq/core --save 可选:安装存储适配器,例如 Redis: npm install @keyvhq/redis --save 创建 Keyv 实例并进行设置、读取和删除键值的操作
- 在哪里获取 keyvhq?
- 源代码和安装说明在 GitHub 上:https://github.com/microlinkhq/keyvhq
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
从 Redis 分支而来的高性能键值数据结构服务器,适用于缓存与实时负载场景。
面向 Valkey 与 Redis 的 Java 客户端,在基础命令之上提供分布式集合、锁、队列和服务。
基于 Node.js 的论坛软件,支持实时讨论,可使用 Redis、MongoDB 或 PostgreSQL 作为数据库。
纯 Go 编写的可嵌入式持久化键值数据库,支持 ACID 事务,面向 SSD 优化。
Hugging Face 参数高效微调(PEFT)库,只训练少量额外参数即可适配大型预训练模型。