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

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
選択します デフォルト オブジェクト/マップ Lruキャッシュ レベルDB レディス モンゴDB SQLite/MySQL
テーブル名 「kvs」 バツ バツ バツ
キー名 「き」 バツ バツ バツ バツ
値の名前 「v」 バツ バツ バツ バツ
キーのサイズ 32 バツ バツ バツ バツ バツ
値のサイズ 256 バツ バツ バツ バツ バツ
クリーンアップ間隔(ミリ秒) 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 プール バックエンド。

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()

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