Peter, il est difficile de dire quelle est la meilleure solution ici sans comprendre tout le contexte - mais une approche que vous pouvez utiliser est findAndModify
. Cela interrogera un seul document et le renverra, et lui appliquera également une mise à jour.
Vous pouvez l'utiliser pour rechercher un document à traiter et modifier simultanément un champ "statut" pour le marquer comme étant en cours de traitement, afin que les autres travailleurs puissent le reconnaître comme tel et l'ignorer.
Il y a un exemple ici qui peut être utile :http://docs.mongodb. org/manual/reference/command/findAndModify/