sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur man läser/skriver ett dokument parallellt med mongoDB/mongoose

ja, du behöver bättre låsning på husmodellen för att indikera att en addItemis pågår.

Problemet är att flera förfrågningar kan anropa findById och se samehouse.items.length, och sedan avgöra var och en baserat på den (föråldrade) ögonblicksbilden att det är ok att lägga till ytterligare ett objekt. Nodejs gräns för atomicitet är återuppringningen; mellan ett asynkront samtal och dess återuppringning kan andra förfrågningar köras.

En enkel lösning är att spåra inte bara antalet föremål i huset utan även antalet avsedda addItems. När du går in i addItem, tryck på "vill lägga till fler" och testa det.



  1. MongoDB sortera efter finns endast post, nyckel med värde först och nyckel med null eller inte finns sist

  2. få alla dokument som har maxvärde med aggregering i mongodb

  3. Begränsa flera MongoDB-arraystorlekar

  4. Ta bort gamla poster i mongodb baserat på månad