Node.jsアプリケーションを実行しているサーバーAのデータをサーバーBのMySQLデータベースに挿入しています。まず、重複行があることを確認し、次に結果に基づいてINSERT
重複があることを確認します。テーブルには約300万行があるため、このプロセスには時間がかかる可能性があるため、クエリが長時間実行される可能性があります。
以下のように、サーバーAにアイドルプロセスがあることを確認しましたps xf
。
PID TTY STAT TIME COMMAND
5521 0 Sl 0:00 mynodeappquery1.js
5522 0 Sl 0:00 mynodeappquery2.js
次のようなこれ私はSl
子プロセスがスリープモードを中断できるという基準を理解しています(Node.jsでこれらのクエリをフォークします)。
私のデータベースでこれを使用すると、これらのクエリは実行が完了し、mytop
MySQLデータベースと対話しないことがわかります。
私のNodeアプリケーションのバグのためにこれらのプロセスがまだ実行されているようですが、Linux環境でこれらのプロセスを終了する最良の方法を知りたいです。 20秒間非アクティブな場合は、スクリプトでコマンドを実行して.sh
終了できますか?