素晴らしいコミュニティモジュール

fibjsのsql / level / mongo / redisにある一般的なキー値ストア

インストール

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
選択するデフォルトオブジェクト/マップLruCache LevelDB Redis MongoDB SQLite / MySQL
table_name 「kvs」バツバツバツ
key_name 「k」バツバツバツバツ
value_name 「v」バツバツバツバツ
key_size 32バツバツバツバツバツ
value_size 256バツバツバツバツバツ
cleanup_interval(ms) 60000バツバツバツバツバツ
タイムアウト(ミリ秒) 0バツバツ
プレフィックス「」
キャッシュfalse
cache_size 65536
cache_timeout(ms) 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()

キャッシュ内のすべてのキーと値のペアを削除します。