我有下面的代碼它可以正常作業,但我應該在回傳資料后關閉連接嗎?如果是,那么如何關閉連接?
// project.db.js
const { MongoClient, ObjectId } = require("mongodb");
const { mongo_uri, dbName } = require("../config/constants");
// connect method
function connection() {
return MongoClient.connect(mongo_uri);
}
// async function which read data
exports.allProject_tasks = async (space_id) => {
try {
const result = await connection();
const db = await result.db(dbName);
const payload = await db
.collection("tasks")
.find({
user_space_id: ObjectId(space_id),
})
.toArray();
return payload;
} catch {
return 400;
}
};
uj5u.com熱心網友回復:
當從應用程式端完成作業以釋放資料庫服務器端分配的連接資源時,最好關閉連接(mongoDB為每個連接分配約1MB,這意味著如果您打開1000個連接,您的服務器將僅為連接分配約1GB) ,并且如果您讓資源通過連接超時釋放,則如果超時較高,則在服務器處于高負載時可能會導致問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/422742.html
標籤:
上一篇:為什么不使用“require('express')()”
下一篇:錯誤處理程式中間件不處理錯誤
