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

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

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