3

私は、大量の書き込みが頻繁に発生する可能性があるプロジェクトのテクノロジを調査し始めています。モンゴの書き込みロックはどのレベルで行われるのだろうか? サーバー レベルですか、それともデータベース レベルですか。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 からは、データベース レベルのロックが行われ、さらに譲歩に関する作業が行われます。

于 2012-04-16T14:05:34.170 に答える