我正在开发一个拥有超过 25k 个用户的项目,每次为 创build 任何记录时Oppurtinity module,它都会执行此函数,该函数在 mongodb 中为每个用户插入通知详细信息,问题是它用完了 cpu 并且不让任何其他 API 来产生结果,直到这个异步结束它会占用时间,同时服务器不加载任何其他数据/它给出延迟响应。
v10.15.3v4.0.17Memory-8GB2.70GHz speed我想知道,这里有什么问题,是代码吗,如果是,我该如何优化它?
async.eachSeries(users, (eachuser, next) => {
db.notifications.find({user_id:eachuser._id},function(errr,opp_noti){
if(opp_noti.length != 0){
db.notifications.update( { user_id:eachuser._id},{$push:{oppurtunity:oppurtunity_id}},function(errr,result){
})
}else{
db.notifications.insert({user_id:eachuser._id,oppurtunity:[oppurtunity_id]},function(errr,result){
})
}
})
next();
})
Run Code Online (Sandbox Code Playgroud)