Repolode
microlinkhq

microlinkhq/keyvhq

Biblioteca de almacenamiento clave-valor para Node.js con caducidad TTL y backends intercambiables como Redis, MongoDB, SQLite y PostgreSQL.

Estrellas
446
Forks
20
Issues abiertos
0
Último commit
hace 2 meses

¿Qué es?

Keyv es una pequeña biblioteca para Node.js que permite almacenar pares clave-valor con caducidad opcional (TTL). De forma predeterminada, mantiene los datos en un Map en memoria, pero puedes cambiarlo por un adaptador de almacenamiento para persistirlos en bases de datos como Redis, MongoDB, MySQL, PostgreSQL o SQLite, o en un archivo. También se puede usar como almacén cualquier objeto que implemente la API de Map.

La API se basa en Promises e incluye set, get, has, delete y clear. Los namespaces permiten que varias instancias compartan una base de datos sin que las claves entren en conflicto ni se borren los datos de las demás. Serializa todos los tipos JSON y los valores Buffer, y permite definir una pareja personalizada de funciones serialize y deserialize para otros tipos de datos. Los errores de la base de datos se gestionan para que los fallos del almacén no provoquen la caída de la aplicación.

El proyecto también ofrece decoradores para funciones como la compresión, los límites de tamaño, la memoización, el encadenamiento de varios almacenes y la recopilación de métricas. Su diseño facilita que otros módulos acepten una opción de caché y la pasen a Keyv.

Funciones clave

  • 01Almacena los datos en memoria de forma predeterminada y admite numerosos adaptadores de base de datos.
  • 02Admite la caducidad TTL predeterminada y por clave.
  • 03Los namespaces aíslan las claves dentro de un backend compartido y permiten borrar un solo namespace.
  • 04Gestiona de forma integrada todos los tipos JSON y los valores Buffer.
  • 05Admite funciones personalizadas serialize y deserialize.
  • 06Permite usar como almacén cualquier objeto que implemente la API de Map.

Casos de uso

  • Añadir una caché con TTL a una aplicación Node.js respaldada por Redis u otra base de datos.
  • Almacenar en caché respuestas HTTP en una biblioteca cliente, como se muestra en el ejemplo con got.
  • Guardar datos clave-valor persistentes en SQLite o PostgreSQL sin tener que crear una capa de datos personalizada.
  • Incorporar compatibilidad con caché en un módulo npm reutilizable que permita a los usuarios proporcionar su propio almacén.

Inicio rápido

  1. 1

    Instala el paquete principal

    npm install @keyvhq/core --save
  2. 2

    Instala opcionalmente un adaptador de almacenamiento, como Redis

    npm install @keyvhq/redis --save
  3. 3

    Crea una instancia de Keyv y establece, obtiene y elimina una clave

Antes de usarlo

  • Algunas funciones y adaptadores dependen de bases de datos o servicios externos, como Redis, MongoDB o PostgreSQL, que debes ejecutar por tu cuenta.

Temas

Preguntas frecuentes

¿Qué es keyvhq?
Biblioteca de almacenamiento clave-valor para Node.js con caducidad TTL y backends intercambiables como Redis, MongoDB, SQLite y PostgreSQL. Keyv es una pequeña biblioteca para Node.js que permite almacenar pares clave-valor con caducidad opcional (TTL). De forma predeterminada, mantiene los datos en un Map en memoria, pero puedes cambiarlo por un adaptador de almacenamiento para persistirlos en bases de datos como Redis, MongoDB, MySQL, PostgreSQL o SQLite, o en un archivo. También se puede usar como almacén cualquier objeto que implemente la API de Map.
¿keyvhq es gratuito? ¿Qué licencia tiene?
keyvhq es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿keyvhq sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de keyvhq fue el 27 ago 2026.
¿Para qué puedo usar keyvhq?
Añadir una caché con TTL a una aplicación Node.js respaldada por Redis u otra base de datos. Almacenar en caché respuestas HTTP en una biblioteca cliente, como se muestra en el ejemplo con got. Guardar datos clave-valor persistentes en SQLite o PostgreSQL sin tener que crear una capa de datos personalizada. Incorporar compatibilidad con caché en un módulo npm reutilizable que permita a los usuarios proporcionar su propio almacén.
¿Cómo se instala keyvhq?
Instala el paquete principal: npm install @keyvhq/core --save Instala opcionalmente un adaptador de almacenamiento, como Redis: npm install @keyvhq/redis --save Crea una instancia de Keyv y establece, obtiene y elimina una clave
¿Dónde consigo keyvhq?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microlinkhq/keyvhq

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados