MongoDB實戰指南(三):MongoDB的鎖機制


  與關系數據庫一樣,MongoDB也是通過鎖機制來保證數據的完整性和一致性,MongoDB利用讀寫鎖來支持並發操作,讀鎖可以共享寫鎖具有排他性。當一個讀鎖存在時,其他讀操作也可以用這個讀鎖;但當一個寫鎖存在時,其他任何讀寫操作都不能共享這把鎖,當一個讀和寫都等待一個鎖時,MongoDB將優先分配鎖給寫操作。

  從版本2.2開始,MongoDB在每一個數據庫上實現鎖的粒度,當然對於某些極少數的操作,在實例上面的全局鎖依然存在,鎖粒度的降低能夠提高系統的並發性。成熟的關系數據庫鎖的粒度更低,它可以在表中的某一行上,即"行級鎖"。常見的操作和產生的鎖類型如下:

  查詢產生讀鎖,增刪改產生寫鎖,默認情況下在前台創建索引會產生寫鎖。聚集aggregate操作產生讀鎖等。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM