fibjs를 위한 일반 리소스 풀링
설치하다
1npm install fib-pool [--save]
시험
1npm run ci
풀 만들기
간단한 예.
1
2
3
4
5
6var db = require("db");
var Pool = require("fib-pool");
var p = Pool(() => {
return db.open("sqlite:test.db");
});
최대 크기 및 시간 초과를 지정합니다.
1
2
3
4
5
6var db = require("db");
var Pool = require("fib-pool");
var p = Pool(() => {
return db.open("sqlite:test.db");
}, 10, 30 * 1000);
사용자 정의 파괴 기능을 지정합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13var db = require("db");
var Pool = require("fib-pool");
var p = Pool({
create: () => {
return db.open("sqlite:test.db");
},
destroy: (o) => {
o.close()
},
timeout: 30 * 1000,
retry: 3
});
수영장 이용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17var db = require("db");
var Pool = require("fib-pool");
var p = Pool({
create: () => {
return db.open("sqlite:test.db");
},
destroy: (o) => {
o.close()
},
timeout: 30 * 1000,
retry: 3
});
var res = p((conn) => {
conn.execute("select * from test");
});
이름으로 풀 사용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16var db = require("db");
var Pool = require("fib-pool");
var p = Pool({
create: (name) => {
return db.open("sqlite:" + name + ".db");
},
destroy: (o) => {
o.close()
},
timeout: 30 * 1000
});
var res = p("test", (conn) => {
conn.execute("select * from test");
});
풀 지우기
간단한 예.
1
2
3
4
5
6
7
8var db = require("db");
var Pool = require("fib-pool");
var p = Pool(() => {
return db.open("sqlite:test.db");
});
p.clear();