MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Cara menggunakan kembali koneksi ke Mongodb dengan benar di seluruh aplikasi dan modul NodeJs

Anda dapat membuat mongoUtil.js modul yang memiliki fungsi untuk terhubung ke mongo dan mengembalikan instance mongo db:

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;
  }
};

Untuk menggunakannya, lakukan ini di app.js :

var mongoUtil = require( 'mongoUtil' );

mongoUtil.connectToServer( function( err, client ) {
  if (err) console.log(err);
  // start the rest of your app here
} );

Dan kemudian, ketika Anda membutuhkan akses ke mongo di tempat lain, seperti di .js lainnya file, Anda dapat melakukan ini:

var mongoUtil = require( 'mongoUtil' );
var db = mongoUtil.getDb();

db.collection( 'users' ).find();

Alasan ini berfungsi adalah karena di simpul, ketika modul require 'd, mereka hanya dimuat/bersumber sekali sehingga Anda hanya akan berakhir dengan satu contoh _db dan mongoUtil.getDb() akan selalu mengembalikan instance yang sama.

Catatan, kode tidak diuji.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Adakah yang mencoba MongoDB di Google App Engine?

  2. Mongo $in kinerja operator

  3. JSON membuat serial Mongodb

  4. Garis:Harus memberikan sumber atau pelanggan

  5. Pencarian Data Musim Semi MongoDB dengan Agregasi Pipeline