我有一个节点工作服务器集群,用于处理命中api并将数据插入mongo db。我遇到的问题是这些功能中的一个似乎经常插入同一文档的两个副本。它检查文档是否已使用如下查询创建:
gameDetails.findOne({ gameId: gameId }, function(err, gameCheck) {
if (!gameCheck) { //insert the document };
如何确保此函数始终只运行一个实例。或者,如果我没有推断出实际的根问题,那么可能导致像这样的mongo查询有时会导致多个同一个文档(包含相同的gameId)被插入?