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

複数のドキュメントがmongodbデータベースに追加されないようにする方法

    問題は、マングースと群衆との互換性のどこかにあります。

    「スレッド」ごとに新しい「接続」イベントが発生し、接続時にドキュメントを削除します https://gist.github.com/wootwoot1234/49cb7d082850d93f8cd03da164644cfb#file-index-js-L100

    db.once('open', async function() {
      await Message.deleteOne(messageQuery); // <=== remove it from here to fix the problem
      throng({
        worker: start,
        count: 50,
        lifetime: Infinity
      });
    });
    

    これは、throngがスレッド間、特に接続プール間でグローバル変数を分離する方法が原因である必要があります。デフォルトでは、マングース接続プールは5です。これは、データベースへの接続が一度に5つ以下であることを意味します。ドライバーはそれらを開いたままにして再利用し、接続コストを節約します。

    Atlas接続の監視をチェックすると、このスクリプトを実行すると、さらに100の接続が表示されます。




    1. 与えられた条件でデータを選択する方法

    2. nodeJSでのPub/subの実装

    3. Redisを使用してNodeJとPHPの間でセッションを共有するにはどうすればよいですか?

    4. redisハッシュでキーパターンを検索する方法は?