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

Ambil dari beberapa, terpisah, koleksi dengan Express dan MongoDB

Gunakan async perpustakaan yang paling cocok untuk skenario ini. Di mana Anda perlu menjalankan banyak tugas yang tidak bergantung satu sama lain dan ketika semuanya selesai lakukan sesuatu yang lain, Anda harus menggunakan async.parallel() metode. Tanda tangannya adalah async.parallel(tasks, callback) , di mana tugas adalah array fungsi.

Ini akan segera menjalankan semua fungsi secara paralel, menunggu semuanya memanggil panggilan balik tugas mereka, dan akhirnya ketika semua tugas selesai, itu akan menjalankan panggilan balik (panggilan balik terakhir).

Contoh berikut menunjukkan bagaimana hal ini dapat disesuaikan untuk kasus penggunaan Anda:

router.get('/profile', function(req, res, next) {
    mongo.connect(url, function(err, db) {
        var locals = {};
        var tasks = [
            // Load users
            function(callback) {
                db.collection('users').find({}).toArray(function(err, users) {
                    if (err) return callback(err);
                    locals.users = users;
                    callback();
                });
            },
            // Load colors
            function(callback) {
                db.collection('colors').find({}).toArray(function(err, colors) {
                    if (err) return callback(err);
                    locals.colors = colors;
                    callback();
                });
            }
        ];

        async.parallel(tasks, function(err) { //This function gets called after the two tasks have called their "task callbacks"
            if (err) return next(err); //If an error occurred, let express handle it by calling the `next` function
            // Here `locals` will be an object with `users` and `colors` keys
            // Example: `locals = {users: [...], colors: [...]}`
            db.close();
            res.render('profile/index', locals);
        });
    });
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sopir PHP mongodb memeriksa koneksi

  2. MongoDB $tarik larik 2 tingkat

  3. Tidak peka huruf besar indeks unik Mongo

  4. Kueri Agregat di Mongodb mengembalikan bidang tertentu

  5. tidak dapat menjalankan konektor mongo