Module communautaire génial

magasin de valeurs-clés général sur sql / level / mongo / redis pour fibjs

Installer

1
npm install fib-kv [--save]

Tester

1
npm run ci

Création d'un magasin de valeurs-clés

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
opte défaut objet / Carte LruCache LevelDB Redis MongoDB SQLite / MySQL
nom de la table "kvs" X X X
nom_clé "k" X X X X
nom_valeur "v" X X X X
taille_clé 32 X X X X X
Taille de la valeur 256 X X X X X
cleanup_interval (ms) 60000 X X X X X
délai d'attente (ms) 0 X X
préfixe ""
cache faux
taille du cache 65536
cache_timeout (ms) 60000

Une clé n'expirera pas si le timeout est inférieur ou égal à 0.

Exemple simple (backend mémoire).

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

Les méthodes

kvs.setup()

configurer la base de données backend.

v = kvs.get(k)

renvoie la valeur stockée pour cette clé.

kvs.set(k, v)

stocke une paire valeur / clé.

e = kvs.has(k)

retourne si une clé est définie sur le magasin.

e = kvs.keys()

renvoie toutes les clés du magasin.

e = kvs.renew(k)

renouvelle TTL pour une clé non expirée.

kvs.remove(k)

supprime une paire clé-valeur par clé.

e = kvs.cache_has(k)

retourne si une clé est définie sur le cache.

kvs.cache_clear()

supprime toutes les paires clé-valeur du cache.