mdb空闲关闭
This commit is contained in:
parent
28d01f586a
commit
f07b1fc0b7
@ -9,7 +9,10 @@ async function connGameLogDB() {
|
||||
}else{
|
||||
logDBUrl = "mongodb://root:lyMaple525458@10.0.1.20:27017/heijiao_gamelog?authSource=admin";
|
||||
}
|
||||
let client = await MongoClient.connect(logDBUrl,{maxPoolSize:10});
|
||||
let client = await MongoClient.connect(logDBUrl,{
|
||||
maxPoolSize:10,
|
||||
maxIdleTimeMS: 5*60*1000
|
||||
});
|
||||
logDB = client.db(`gameLog${G.config.serverId}`);
|
||||
return logDB;
|
||||
}
|
||||
|
@ -441,13 +441,22 @@ export async function initMongoDB() {
|
||||
//可结合查看:node_modules\mongodb\lib\connection_string.js
|
||||
//maxPoolSize默认值:100
|
||||
|
||||
let option:MongoClientOptions;
|
||||
/**
|
||||
* MongoDB连接池具有多个参数,用于控制连接池的行为和性能。下面是一些常用的连接池参数及其作用:
|
||||
* maxPoolSize:连接池的最大连接数。默认值为100。该参数决定了连接池中可以同时存在的最大连接数,超过这个数量后,新的连接请求会被阻塞。
|
||||
* minPoolSize:连接池的最小连接数。默认值为0。该参数决定了连接池中保持的最小连接数,当连接数少于这个数量时,连接池会自动创建新的连接实例。
|
||||
* maxIdleTimeMS:连接的最大空闲时间(毫秒)。默认值为0,表示连接不会被强制断开。该参数决定了连接在空闲一定时间后是否被断开,以释放服务器资源。
|
||||
* waitQueueTimeoutMS:连接请求的等待时间(毫秒)。默认值为0,表示无限等待。当连接池达到最大连接数时,新的连接请求会被放入等待队列中,该参数决定了连接请求在队列中的最长等待时间。
|
||||
*/
|
||||
|
||||
let option:MongoClientOptions = {
|
||||
//空闲5分钟后关闭
|
||||
maxIdleTimeMS: 5*60*1000
|
||||
};
|
||||
//跨服只有1个,直接采用默认配置就行
|
||||
if(G.argv.serverType != 'cross'){
|
||||
if(PublicShared.getOpenServerDay() > 3){
|
||||
option = {
|
||||
maxPoolSize: 10
|
||||
}
|
||||
option.maxPoolSize=10;
|
||||
}
|
||||
}
|
||||
|
||||
@ -461,7 +470,8 @@ export async function initMongoDB() {
|
||||
console.log('connect crossmongodb ......');
|
||||
//本服里,维持住跟跨服数据库的链接
|
||||
let crossClient = await MongoClient.connect(G.config.crossMongodbUrl,{
|
||||
maxPoolSize:10
|
||||
maxPoolSize:10,
|
||||
maxIdleTimeMS: 5*60*1000
|
||||
});
|
||||
G.crossmongodb = new _mongodb(crossClient.db(G.config.corssDBName || ""));
|
||||
console.log('connect crossmongodb succ');
|
||||
|
Loading…
Reference in New Issue
Block a user