Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当存在多个并发请求时,自动递增mongodb中的索引字段_Mongodb_Mongoose_Auto Increment_Mongoose Auto Increment - Fatal编程技术网

当存在多个并发请求时,自动递增mongodb中的索引字段

当存在多个并发请求时,自动递增mongodb中的索引字段,mongodb,mongoose,auto-increment,mongoose-auto-increment,Mongodb,Mongoose,Auto Increment,Mongoose Auto Increment,我试图在 MunGODB 中自动增加索引< /COD>字段>每当有插入发生时,我读取SO上的许多帖子,但我不知道它们是如何工作的,因为考虑下面的场景 假设我想在我的集合中自动递增一个字段计数器,并且当前已存在其计数器值为1的第一条记录,现在假设数据库中现在有三个并发插入,因为计数器值为1,所以所有这些插入都必须尝试设置计数器2。但是我们知道,在这三个锁中,谁将获得第一个锁,谁将成功地将其计数器设置为2,但是其他两个操作呢?因为现在当它们获取锁时,它们也会尝试将计数器的值设置为2,但由于2已经被取

我试图在<代码> MunGODB <代码>中自动增加<代码>索引< /COD>字段>每当有插入发生时,我读取SO上的许多帖子,但我不知道它们是如何工作的,因为考虑下面的场景

假设我想在我的集合中自动递增一个字段
计数器
,并且当前已存在其
计数器
值为1的第一条记录,现在假设数据库中现在有三个并发插入,因为
计数器
值为1,所以所有这些插入都必须尝试设置
计数器
2。但是我们知道,在这三个锁中,谁将获得第一个锁,谁将成功地将其
计数器设置为2,但是其他两个操作呢?因为现在当它们获取锁时,它们也会尝试将
计数器
的值设置为2,但由于2已经被取了,所以我猜mongoose会给出错误重复键错误

有谁能告诉我以上两篇文章是如何解决mongodb中索引字段自动递增的并发问题的

我知道我错过了一些机会,但是什么呢??

谢谢