(時々働く、時々ない)コマンドを実行する権限がありません - 次のようにセットアップは次のとおりです。MongoDBの+ノード:私は私のMongoDB環境での問題に直面しています
マイノードアプリがどのrestify APIを提供ユーザーの登録を処理します(ユーザーが自分のメールに基づいてコレクションに存在するかどうか調べ、そうでない場合は挿入します(注:insertはbcryptを使用してパスワードをハッシュするので、おそらく少し遅くなります)。それはrestifyとMongoose ORMを使用します。
2番目のベンチマークスクリプト(同じマシンで実行されているノードでも書かれています)は、HTTP PUTを使用してこのrestify APIにアクセスします。
私はベンチマークで(ランダムデータで)これらのリクエストの約20-30を開始しており、一部のAPIリクエストのみが新しいユーザーを正しく挿入します。その他の場合は、MongoDBは次のようなエラーを生成します。
は上の権限がありません... {見つける: "ユーザー"、フィルター:{メール: "[email protected]"}}コマンドを実行するために
に...コマンドを実行する権限がありません{挿入: "ユーザー"、ドキュメント:[{...}]は、注文した:偽、writeConcernを:{W:1}}いくつかの他のユーザーが取得
完全に細かく挿入された。特に、同時に少ないリクエスト数(1-5)で問題は発生しません。 Mongoはこれらの「低い」量の要求を処理できませんか?それは同じマシン上で実行されているので問題ですか?このプロジェクトのために私がMongoで作成したユーザーは、txns /秒で十分ですか?
敬具、 Zahlii
モンゴについてはあまりよく分かりませんが、読み書きロックによってこれらのエラーが発生する可能性はありますか?たぶん、書き込みの失敗とロックのためのこの記事をチェックしてください:https://www.rainforestqa.com/blog/2012-11-05-mongodb-gotchas-and-how-to-avoid-them/ – HeadCode
私もこの問題に直面しています。この問題の解決方法を教えていただけますか? –