MongoDB 批量修改

来源:互联网 发布:信用卡淘宝限额 编辑:程序博客网 时间:2024/05/02 03:07


思路:

1,并发多链接

2,单链接


并发就不说了,直接多new几个db就好了。单链接需要使用回调递归。Mark 下


var Db = require('mongodb').Db;var Server = require('mongodb').Server;var MD5DB  = {//数据库配置_dbConf: {dbName: 'comment', //数据库名称serverIp: 'xxxxxx', //数据库访问ip,fedev机器ipserverPort: xxxx //mongodb访问端口},init: function(){},itemIndex:0,updateFilesModified:function(objArray,callback){var dbConf = this._dbConf;var self = this;        var db = new Db(dbConf.dbName, new Server(dbConf.serverIp, dbConf.serverPort), {safe: true});        db.open(function(err, db) {            var list = db.collection('files');self.updateInstance(list, objArray,db);        });},updateInstance:function(list,items,db){var self = this;list.update({fileId: items[self.itemIndex]}, {$inc : {modified: 1 }}, {upsert:true,w: 1}, function(err, item) {if(err) console.log(err.stack);self.itemIndex++;if( self.itemIndex >= items.length){db.close();self.itemIndex =0;}else{self.updateInstance(list,items,db)}});}};module.exports = MD5DB;


0 0
原创粉丝点击