almacén xeral de valor-clave en sql / level / mongo / redis para fibjs
Instalar
1npm install fib-kv [--save]
Proba
1npm run ci
Creación dunha tenda de valores clave
var kvs = new kv(conn, opts);
1
2conn: 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
6var kv = require("fib-kv");
var kvs = new kv({
"a": 100,
"b": 200
});
Backend de LevelDB.
1
2
3
4var 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
5var 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é.