是什么导致简单的读取查询等待mongo中的**全局**锁定

时间:2017-04-24 13:23:12

标签: mongodb mongodb-query

我正在使用mongo 3.2和一些查询到我很少写的集合 - 必须等待全局锁定(大约100毫秒)。

我认为写作可能会锁定文档或集合 - 但为什么对小集合的读取查询必须等待全局锁定'?即使系统的其余部分在其他集合上获得大量写入。

有人能指出我关于导致全局锁定发生的原因的方向吗?

1 个答案:

答案 0 :(得分:2)

查看Concurrency FAQ。特别是,该页面突出了意图锁定方案,该方案要求每个操作在意图模式下采取全局锁定,以防另一个操作需要通过以常规(非意图)模式采用全局锁定来阻止任何读取。 Does a MongoDB Operation Ever Lock More Than One Database?部分详述了一些操作,这些操作将以与正常读取或写入冲突的模式进行全局锁定。还有一个标题为How do I see the status of Locks on my mongod instances?的部分可以帮助您确定哪些锁与您的操作发生冲突。