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

Apakah perlu membuka koneksi MongoDB setiap kali saya ingin bekerja dengan DB?

Saya akan merekomendasikan untuk tidak mempertahankan satu koneksi jika Anda menginginkan skalabilitas apa pun.

Ada sejumlah opsi untuk penyatuan koneksi, dll, tetapi kebanyakan orang yang menghabiskan waktu dengan Node dan MongoDB akhirnya pindah ke Mongoose di beberapa titik.

Selain menambahkan lapisan skema yang bagus, ia menawarkan abstraksi koneksi sehingga Anda dapat default ke koneksi bersama dengan memanggil mongoose.connect() , atau Anda dapat membuat beberapa koneksi atau berpartisipasi dalam penggabungan koneksi dengan memanggil mongoose.createConnection() . Dalam kedua kasus, Anda memanggilnya tanpa panggilan balik, dan mesin luwak akan menunda panggilan berikutnya ke modul sampai setelah koneksi dibuat, sehingga kode Anda tidak perlu peduli.

Sesuatu seperti kasus penggunaan Anda mungkin terlihat seperti ini:

// in your app.js or server.js file
var mongoose = require('mongoose');
mongoose.connect(config.db.url); // assuming you have some module that handles config variables

Kemudian di ./models/user.js

const mongoose = require('mongoose'),
         Schema   = mongoose.Schema;

   const UserSchema = new Schema({
      name: String,
      age: Number,
      roles: [String]
   });
   mongoose.model('User',UserSchema);

akhirnya, katakanlah fungsi seed untuk membuat kumpulan pengguna awal Anda:

const mongoose = require('mongoose'),
      User     = mongoose.model('User');

// create some users
var user1 = new User({name: 'modulus admin', age: 42, roles: ['admin', 'moderator', 'user']});
var user2 = new User({name: 'modulus user', age: 22, roles: ['user']});

user1.save(console.log);
user2.save(console.log);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tidak dapat mengakses properti objek dari respons Mongoose

  2. PyMongo $inc mengalami masalah

  3. Bagaimana cara mengakses MongoDB Meteor dari klien lain, saat Meteor sedang berjalan?

  4. Pencarian teks luwak dengan operator AND

  5. Menyesuaikan nama kacang repositori Spring Data untuk digunakan dengan banyak sumber data