mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-23 13:03:50 +00:00
fix: mongo内存泄漏
This commit is contained in:
@@ -1,18 +1,28 @@
|
||||
import mongoose from 'mongoose';
|
||||
import type { Mongoose } from 'mongoose';
|
||||
|
||||
let cachedClient: Mongoose;
|
||||
|
||||
export async function connectToDatabase() {
|
||||
if (cachedClient && cachedClient.connection.readyState === 1) {
|
||||
return cachedClient;
|
||||
/**
|
||||
* 连接 MongoDB 数据库
|
||||
*/
|
||||
export async function connectToDatabase(): Promise<void> {
|
||||
// @ts-ignore
|
||||
if (global.mongodb) {
|
||||
return;
|
||||
}
|
||||
// @ts-ignore
|
||||
global.mongodb = 'connecting';
|
||||
console.log('connect mongo');
|
||||
try {
|
||||
// @ts-ignore
|
||||
global.mongodb = await mongoose.connect(process.env.MONGODB_URI as string, {
|
||||
dbName: 'doc_gpt',
|
||||
maxPoolSize: 10,
|
||||
minPoolSize: 1
|
||||
});
|
||||
} catch (error) {
|
||||
console.error('mongo connect error');
|
||||
// @ts-ignore
|
||||
global.mongodb = null;
|
||||
}
|
||||
|
||||
cachedClient = await mongoose.connect(process.env.MONGODB_URI as string, {
|
||||
dbName: 'doc_gpt'
|
||||
});
|
||||
|
||||
return cachedClient;
|
||||
}
|
||||
|
||||
export * from './models/authCode';
|
||||
|
Reference in New Issue
Block a user