sql >> データベース >  >> NoSQL >> MongoDB

MongoDB:使用後にカーソルを閉じる必要があるのはなぜですか?

    カーソルを閉じる必要があるのは、結果を「使い果たして」いない場合のみです。または、言い換えると、カーソルによって返される可能性のあるすべての結果を繰り返し処理します。

    「カーソル」を開いたままにしておくことは、再利用されない接続を開いたままにするようなものです。これらのものは無料ではありません。実際、標準の接続コストは1MB(約)です。したがって、多くの「部分的に繰り返される」カーソルをぶら下げたままにしておくと、アクティブな接続とそのメモリ使用量に関して一般的なオーバーヘッドが発生します。

    実際、実際に常に結果の「すべて」を繰り返す場合(および、「カーソル修飾子」である「制限」を含む場合)、カーソルは閉じて、すべて問題ありません。

    一般的な使用法は、すべての結果を調べて、実際にカーソルを使い果たす/使い果たすことです。したがって、明示的に破棄する必要はありません。



    1. expressjs、mongodbサイトの画像を保存するための最良の方法はどれですか?

    2. ロケーションオブジェクトが必要です。ロケーション配列が正しい形式ではありません

    3. 何の応答も得られずにredisでコマンドを実行するにはどうすればよいですか?

    4. Mongo / MongooseAggregation-$redactおよび$condの問題