sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur hanterar MongoDB samtidiga uppdateringar?

MongoDB använde ett processomfattande skrivlås för att garantera att endast en skrivoperation (uppdatering/infoga/ta bort) kan utföras åt gången. Som sådan löser den automatiskt samtidighetsproblem eftersom skrivsamtidighet helt enkelt inte är tillåten.

Om fyra trådar försöker en uppdateringsoperation kommer en av dem att ta skrivlåset, göra dess uppdatering och släppa låset. Efter det kommer en av de återstående 3 att ta tag i låset, göra dess uppdatering, etc.

Samtidighet spelar bara in om din operation inte kan lindas in i en enda skrivoperation. Observera att för det vanligaste användningsfallet (hitta ett dokument, uppdatera det och ta den nya versionen atomiskt) erbjuder MongoDB kommandot "findAndModify" som gör just det:http://www.mongodb.org/display/DOCS/findAndModify+Command

UPPDATERING:Låsningen är mer detaljerad nu för tiden.



  1. Hur man implementerar Redis Multi-Exec med Spring-data-Redis

  2. Hur man kommer åt MongoDB

  3. Redis Databas TTL

  4. mongodb textsökning med flera fält