Impresionante módulo de comunidad

tienda de valor-clave general en sql / level / mongo / redis para fibjs

Instalar en pc

1
npm install fib-kv [--save]

Prueba

1
npm run ci

Crear una tienda de valores clave

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
opta defecto objeto / Mapa LruCache LevelDB Redis MongoDB SQLite / MySQL
nombre de la tabla "kvs" X X X
Nombre clave "k" X X X X
nombre_valor "v" X X X X
tamaño_clave 32 X X X X X
tamaño del valor 256 X X X X X
limpieza_intervalo (ms) 60000 X X X X X
tiempo de espera (ms) 0 0 X X
prefijo ""
cache falso
tamaño del caché 65536
cache_timeout (ms) 60000

Una clave no caducará si el timeout es menor o igual a 0.

Ejemplo simple (backend de memoria).

1 2 3 4 5 6
var kv = require("fib-kv"); var kvs = new kv({ "a": 100, "b": 200 });

LevelDB backend.

1 2 3 4
var kv = require("fib-kv"); var db = require("db"); var kvs = new kv(db.openLevelDB("test.ldb"));

backend de fib-pool.

1 2 3 4 5
var kv = require("fib-kv"); var db = require("db"); var pool = require("fib-pool"); var kvs = new kv(pool(() => db.openLevelDB("test.ldb")));

Métodos

kvs.setup()

configurar la base de datos del backend.

v = kvs.get(k)

devuelve el valor almacenado para esa clave.

kvs.set(k, v)

almacena un par clave-valor.

e = kvs.has(k)

devuelve si una clave está configurada en la tienda.

e = kvs.keys()

devuelve todas las llaves en la tienda.

e = kvs.renew(k)

renueva TTL para una clave no vencida.

kvs.remove(k)

elimina un par clave-valor por clave.

e = kvs.cache_has(k)

devuelve si una clave está configurada en la memoria caché.

kvs.cache_clear()

elimina todos los pares clave-valor en el caché.