fibjs에 대한 sql/level/mongo/redis의 일반 키-값 저장소
설치하다
1npm install fib-kv [--save]
시험
1npm run ci
키-값 저장소 만들기
var kvs = new kv(conn, opts);
1
2conn: database connection or connection factory like fib-pool
opts: kvs options
선택하다 | 기본 | 객체/지도 | 루캐시 | 레벨DB | 레디스 | 몽고DB | SQLite/MySQL |
---|---|---|---|---|---|---|---|
테이블_이름 | "kvs" | 엑스 | 엑스 | 엑스 | √ | √ | √ |
키_이름 | "케이" | 엑스 | 엑스 | 엑스 | 엑스 | √ | √ |
값_이름 | "V" | 엑스 | 엑스 | 엑스 | 엑스 | √ | √ |
키_크기 | 32 | 엑스 | 엑스 | 엑스 | 엑스 | 엑스 | √ |
value_size | 256 | 엑스 | 엑스 | 엑스 | 엑스 | 엑스 | √ |
정리_간격(ms) | 60000 | 엑스 | 엑스 | 엑스 | 엑스 | 엑스 | √ |
시간 초과(ms) | 0 | 엑스 | √ | 엑스 | √ | √ | √ |
접두사 | "" | √ | √ | √ | √ | √ | √ |
은닉처 | 거짓 | √ | √ | √ | √ | √ | √ |
캐시_크기 | 65536 | √ | √ | √ | √ | √ | √ |
캐시 시간 초과(ms) | 60000 | √ | √ | √ | √ | √ | √ |
timeout
0보다 작거나 같으면 키가 만료되지 않습니다 .
간단한 예(메모리 백엔드)
1
2
3
4
5
6var kv = require("fib-kv");
var kvs = new kv({
"a": 100,
"b": 200
});
LevelDB 백엔드.
1
2
3
4var kv = require("fib-kv");
var db = require("db");
var kvs = new kv(db.openLevelDB("test.ldb"));
fib-풀 백엔드.
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")));
행동 양식
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()
캐시의 모든 키-값 쌍을 제거합니다.