正在发生 mongoDB 写入,然后读取必须等待或不等待

2024-04-16

当 mongoDB 写入发生时,读取必须等待或不等待。 当 mongoDB 要在 mongodb 中写入一些文档时,会发生写锁并且 其他线程尝试读取其他文档,那么它应该等待直到写锁释放或不释放。 所有读锁和写锁之间是否存在依赖关系


来自docs http://docs.mongodb.org/manual/faq/concurrency/#what-type-of-locking-does-mongodb-use.

MongoDB 使用允许并发读取访问的读写锁 访问数据库,但提供对单个写入操作的独占访问权限。

当读锁存在时,许多读操作可能会使用该锁。 然而,当存在写锁时,单个写操作将持有 独占锁定,任何其他读或写操作都不能共享该 锁。

锁是“贪婪的写者”,这意味着写锁具有优先权 过度阅读。当读和写都在等待锁时,MongoDB 授予写入锁定。

回答你的问题:

因此,“n”次读取可以并行发生,并且当发生写入时,所有读取/写入都会被阻止。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正在发生 mongoDB 写入,然后读取必须等待或不等待 的相关文章

随机推荐