tenda xeral de clave-valor en sql/level/mongo/redis para fibjs
Instalar
1npm install fib-kv [--save]
Proba
1npm run ci
Creando unha 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 | NivelDB | Redis | MongoDB | SQLite/MySQL |
---|---|---|---|---|---|---|---|
nome_táboa | "kvs" | x | x | x | √ | √ | √ |
nome_chave | "k" | x | x | x | x | √ | √ |
nome_valor | "v" | x | x | x | x | √ | √ |
tamaño_chave | 32 | x | x | x | x | x | √ |
valor_tamaño | 256 | x | x | x | x | x | √ |
intervalo_limpeza (ms) | 60000 | x | x | x | x | x | √ |
tempo de espera (ms) | 0 | x | √ | x | √ | √ | √ |
prefixo | "" | √ | √ | √ | √ | √ | √ |
caché | falso | √ | √ | √ | √ | √ | √ |
caché_tamaño | 65536 | √ | √ | √ | √ | √ | √ |
caché_timeout (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 fib-pool.
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()
configurar a base de datos de fondo.
v = kvs.get(k)
devolve o valor almacenado para esa chave.
kvs.set(k, v)
almacena un par clave-valor.
e = kvs.has(k)
devolve se se estableceu unha chave na tenda.
e = kvs.keys()
devolve todas as chaves da tenda.
e = kvs.renew(k)
renova o TTL para unha chave non caducada.
kvs.remove(k)
elimina un par clave-valor por chave.
e = kvs.cache_has(k)
devolve se se estableceu unha chave na caché.
kvs.cache_clear()
elimina todos os pares clave-valor da caché.