Mòdul de comunitat impressionant

emmagatzematge de valor-clau general a sql / level / mongo / redis per a fibjs

Instal·la

1
npm install fib-kv [--save]

Prova

1
npm run ci

Creació d’un magatzem de valor-clau

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
opta per defecte objecte / Mapa LruCache LevelDB Redis MongoDB SQLite / MySQL
nom_tabla "kvs" x x x
nom_clau "k" x x x x
nom_valor "v" x x x x
mida_clau 32 x x x x x
valor_mida 256 x x x x x
neteja_interval (ms) 60000 x x x x x
temps d'espera (ms) 0 x x
prefix ""
memòria cau fals
mida_caché 65536
cache_timeout (ms) 60000

Una clau no caducarà si timeoutés inferior o igual a 0.

Exemple senzill (backend de memòria).

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 fibres.

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ètodes

kvs.setup()

configureu la base de dades del backend.

v = kvs.get(k)

retorna el valor emmagatzemat per a aquesta clau.

kvs.set(k, v)

emmagatzema un parell clau-valor.

e = kvs.has(k)

retorna si es defineix una clau a la botiga.

e = kvs.keys()

torna totes les claus de la botiga.

e = kvs.renew(k)

renova TTL per una clau no caducada.

kvs.remove(k)

suprimeix un parell clau-valor per clau.

e = kvs.cache_has(k)

retorna si es defineix una clau a la memòria cau.

kvs.cache_clear()

elimina tots els parells clau-valor de la memòria cau.