sql >> データベース >  >> RDS >> Mysql

正常に実行した後、nodejsスクリプトが自動的に終了しません

    この問題を経験しました。

    process.exit()を使用するだけの問題 私が取り組んでいるプログラムはハンドルを作成していましたが、ハンドルを破壊することはありませんでした。

    ディレクトリを処理し、データを orientdbに配置していました。 。

    ですから、私が学んだことのいくつかは、参照を取り除く前にデータベース接続を閉じる必要があるということです。そして、そのprocess.exit() すべてのケースを解決するわけではありません。

    私のプロジェクトが2,000ファイルを処理したとき。残りは約500になり、余分なハンドルによって使用可能な作業メモリーがいっぱいになります。つまり、続行できなくなります。したがって、process.exitに到達することはありません 最後に。

    一方、アプリを開いたままにするように要求しているアイテムを閉じると、そのソースで問題を解決できます。

    私が使用できた2つの「文書化されていない関数」は

    でした
    process._getActiveHandles();
    process._getActiveRequests();
    

    これらのタイプの問題のデバッグに他のどの機能が役立つかはわかりませんが、これらの機能は素晴らしかったです。

    それらは配列を返し、これらのメソッドを使用することで、プロセスで何が起こっているかについて多くのことを判断できます。

    それが他の誰かがこの投稿に出くわすのに役立つことを願っています。



    1. DAY()の例– MySQL

    2. SQL Server 2005-プログラムでテーブルをエクスポートします(.sqlファイルを実行して再構築します)

    3. Laravel 5 Eloquent:実行されている生のSQLを取得する方法は? (バインドされたデータを使用)

    4. sqlalchemyセッションでのオブジェクトの更新について