3

我开始为一个项目研究技术,该项目可能会频繁进行大量写入。我想知道 mongo write lock 在什么级别发生?它是在服务器级别还是数据库级别?我已阅读http://www.mongodb.org/display/DOCS/How+does+concurrency+work但官方文档说。a write operation can block all other operations.

对我来说,这意味着写锁是服务器级别的,但我希望它们是数据库级别的。有人可以确认或否认这一点吗?

4

1 回答 1

4

目前,MongoDB 确实有一个全局服务器锁。但是,如果必须从磁盘加载内存块,还有一些额外的代码将释放锁定。它为此使用了锁屈服。尽管这并不能解决所有并发问题,但它解决了很多通常相关的问题。这篇文章描述得很好:http ://blog.pythonisito.com/2011/12/mongodbs-write-lock.html

从 MongoDB 2.2 开始,将有一个数据库级别的锁,并且还完成了更多关于 yield 的工作。

于 2012-04-16T14:05:34.170 回答