在Node.js 應用程式中重複使用MongoDB 連接
在Node.js 應用程式中,有效管理資料庫連接對於效能和可擴展性至關重要。最佳實踐之一是在整個應用程式中共享相同的 MongoDB 連接,以避免多個連接並提高效率。然而,實現此目的的最佳方法可能會令人困惑。
建議的方法及其缺點
一種建議的方法是在主 server.js 檔案中建立資料庫連線並將連線物件傳遞給其他模組。這種方法有其優點,因為它允許您重複使用模組內的連接並保持其開啟狀態。然而,它也帶來了一些問題:
使用模組的改進方法
為了增強上述方法,建議創建一個專用的資料庫實用程式模組,封裝連接過程並提供檢索MongoDB 資料庫實例的方法。
以下是此類模組的範例 (mongoUtil.js):
const MongoClient = require('mongodb').MongoClient; const url = "mongodb://localhost:27017"; var _db; module.exports = { connectToServer: function( callback ) { MongoClient.connect( url, { useNewUrlParser: true }, function( err, client ) { _db = client.db('test_db'); return callback( err ); } ); }, getDb: function() { return _db; } };
In app.在 Node.js中,您可以連接到資料庫並啟動您的應用程式:
var mongoUtil = require('mongoUtil'); mongoUtil.connectToServer( function( err, client ) { if (err) console.log(err); // start the rest of your app here } );
在其他模組中,您可以存取資料庫實例,例如so:
var mongoUtil = require('mongoUtil'); var db = mongoUtil.getDb(); db.collection('users').find();
好處:
以上是如何在 Node.js 應用程式中有效率地重複使用 MongoDB 連接?的詳細內容。更多資訊請關注PHP中文網其他相關文章!