Módulo comunitario incrible

almacén xeral de valor-clave en sql / level / mongo / redis para fibjs

Instalar

1
npm install fib-kv [--save]

Proba

1
npm run ci

Creación dunha tenda de valores clave

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
opta por defecto obxecto / Mapa LruCache LevelDB Redis MongoDB SQLite / MySQL
nome_táboa "kvs" x x x
nome_clave "k" x x x x
nome_valor "v" x x x x
key_size 32 x x x x x
valor_tamaño 256 x x x x x
limpeza_intervalo (ms) 60000 x x x x x
tempo de espera (ms) 0 x x
prefixo ""
caché falso
tamaño_caché 65536
tempo_de_caché (ms) 60000

Unha clave non caducará se timeouté menor ou igual a 0.

Exemplo sinxelo (backend de memoria).

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

Backend de LevelDB.

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

backend de piscina de fibras.

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()

configure a base de datos de backend.

v = kvs.get(k)

devolve o valor almacenado para esa clave.

kvs.set(k, v)

almacena un par clave-valor.

e = kvs.has(k)

devolve se se establece unha clave na tenda.

e = kvs.keys()

devolve todas as claves da tenda.

e = kvs.renew(k)

renova TTL por unha clave non caducada.

kvs.remove(k)

elimina un par clave-valor por clave.

e = kvs.cache_has(k)

devolve se unha clave está definida na caché.

kvs.cache_clear()

elimina todos os pares clave-valor da caché.