私たちはついにこの問題を回避する方法を見つけましたが、私はまだ何が起こっているのか理解していません。この例では、MongoDBからデータを取得する最大10個のシグナルハブを生成するサーバーがあります。アプリが起動しているとき、MongoDBをすばやく呼び出してデータの初期セットを取得していたようですが、ときどき機能していましたが、ほとんどの場合は機能しませんでした。最終的に、各SignalRハブのロード間に1秒の遅延を追加することでこれを解決したため、最初のクエリが少し遅れ、競合は発生しませんでした。
これの奇妙な点は、これらのコレクションのいずれにも大量のデータがなく、初期ロードは通常、コレクションあたり100ドキュメント未満(最大)です。物事が初期化されると、MongoDBをヒットする頻度は重要ではないようです。初期負荷のようです。