sql >> Database >  >> NoSQL >> MongoDB

Een document lezen/schrijven in parallelle uitvoering met mongoDB/mongoose

ja, je moet het houseModel beter vergrendelen om aan te geven dat er een addItemis in uitvoering is.

Het probleem is dat meerdere verzoeken findById kunnen aanroepen en hetzelfde huis.items.lengte kunnen zien, en vervolgens elk op basis van die (verouderde) momentopname bepalen dat het goed is om nog een item toe te voegen. De nodejs-grens van atomiciteit is de callback; tussen een asynchrone aanroep en de terugroepactie kunnen andere verzoeken worden uitgevoerd.

Een eenvoudige oplossing is om niet alleen het aantal items in huis bij te houden, maar ook het aantal beoogde addItems. Bij binnenkomst in addItem, stoot het aantal "wil meer toevoegen" aan en test dat.



  1. Hoe het percentage te berekenen met behulp van facet in MongoDB?

  2. Mongodb C#-stuurprogramma Niet-ondersteunde filterfout met specifiek linq-predikaat

  3. geoNear retourneert onjuiste afstand

  4. Stop Mongodb met het negeren van speciale tekens?