Fantastico modulo comunitario

archivio valore-chiave generale su sql / level / mongo / redis per fibjs

Installare

1
npm install fib-kv [--save]

Test

1
npm run ci

Creazione di un archivio valori-chiave

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
opta predefinito oggetto / Mappa LRUCache LevelDB Redis MongoDB SQLite / MySQL
table_name "kvs" X X X
key_name "K" X X X X
value_name "V" X X X X
key_size 32 X X X X X
value_size 256 X X X X X
cleanup_interval (ms) 60000 X X X X X
Timeout (ms) 0 X X
prefisso ""
nascondiglio falso
dimensione della cache 65536
cache_timeout (ms) 60000

Una chiave non scadrà se il timeout è inferiore o uguale a 0.

Esempio semplice (backend di memoria).

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

Backend LevelDB.

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

backend 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")));

metodi

kvs.setup()

imposta il database back-end.

v = kvs.get(k)

restituisce il valore memorizzato per quella chiave.

kvs.set(k, v)

memorizza una coppia chiave-valore.

e = kvs.has(k)

indica se nel negozio è impostata una chiave.

e = kvs.keys()

restituisce tutte le chiavi nel negozio.

e = kvs.renew(k)

rinnova TTL per una chiave non scaduta.

kvs.remove(k)

elimina una coppia chiave-valore per chiave.

e = kvs.cache_has(k)

indica se nella cache è impostata una chiave.

kvs.cache_clear()

rimuove tutte le coppie chiave-valore nella cache.