Потрясающий модуль сообщества

общее хранилище значений ключа на sql/level/mongo/redis для fibjs

Установить

1
npm install fib-kv [--save]

Тест

1
npm run ci

Создание хранилища ключей-значений

var kvs = new kv(conn, opts);

1 2
conn: database connection or connection factory like fib-pool opts: kvs options
выбирает по умолчанию объект/Карта ЛруКэш УровеньБД Редис МонгоБД SQLite/MySQL
имя_таблицы "квс" Икс Икс Икс
имя_ключа "к" Икс Икс Икс Икс
имя_значения "в" Икс Икс Икс Икс
key_size 32 Икс Икс Икс Икс Икс
значение_размера 256 Икс Икс Икс Икс Икс
Cleanup_interval (мс) 60000 Икс Икс Икс Икс Икс
тайм-аут (мс) 0 Икс Икс
префикс ""
кэш ЛОЖЬ
размер кэша 65536
кэш_таймаут (мс) 60000

Срок действия ключа не истечет, если timeoutего значение меньше или равно 0.

Простой пример (бэкэнд памяти).

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

Серверная часть LevelDB.

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

серверная часть 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")));

Методы

kvs.setup()

настроить серверную базу данных.

v = kvs.get(k)

возвращает значение, сохраненное для этого ключа.

kvs.set(k, v)

хранит пару ключ-значение.

e = kvs.has(k)

возвращает, установлен ли ключ в хранилище.

e = kvs.keys()

возвращает все ключи в магазине.

e = kvs.renew(k)

обновляет TTL для ключа с истекшим сроком действия.

kvs.remove(k)

удаляет пару ключ-значение по ключу.

e = kvs.cache_has(k)

возвращает, установлен ли ключ в кеше.

kvs.cache_clear()

удаляет все пары ключ-значение в кеше.