这是一个非常糟糕的做法,永远不要使用计时器来控制代码流。
这里的问题称为原子性。如果需要执行find-save,find-
save,则需要以某种方式打包这些操作(事务)。这取决于您使用的软件。在redis中,您具有multi和exec命令。在mongodb中,您具有findAndModify()。另一种解决方案是使用索引。当您尝试保存同一字段两次时,您将收到一个错误。在猫鼬的schemaType中使用属性“
index:true”和“ unique:true”:
var schema = mongoose.Schema ({ myField: { type: String, index: true, unique: true, required: true },});这就是您所需要的:Mongodb-隔离操作序列-
执行两阶段提交。但是要考虑到,如果您需要进行大量事务,mongodb可能不是最佳选择。



