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

mysqlを使用するNodeJSサーバーがハングする

    プロジェクトにnode-mysqlモジュールを使用しているかどうかはわかりませんが、使用していて、同じECONNRESETの問題が発生しました。これが私の答えの繰り返しです私の問題について :

    彼らのGithubページ でnode-mysqlの人々に連絡しました 確かな答えが得られました。

    1. MySQLは確かにアイドル状態の接続を削除します。タイムアウトまでの秒数を設定するMySQL変数「wait_timeout」があり、デフォルトは8時間です。デフォルトをそれよりはるかに大きく設定できます。 show variables like 'wait_timeout';を使用します タイムアウト設定を表示し、set wait_timeout=28800; 変更します。

    2. この問題 によると 、node-mysqlは、これらの種類の切断後にプール接続を削除しません。モジュール開発者は、SELECT 1;を呼び出すなど、ハートビートを使用して接続を維持することを推奨しました。 間隔を置いて。また、 node-poolmodule の使用を推奨しました。 アイドル状態の接続を自動的に削除するidleTimeoutMillisオプション。



    1. 特定のパーセント範囲でグループ化するSQLクエリを作成するにはどうすればよいですか

    2. スタックオーバーフローのように、顧客がWebサイトでopenidを使用できるようにするにはどうすればよいですか?

    3. PostgreSQLパフォーマンスチューニングのヒント

    4. SQLを使用して垂直方向のデータを水平方向のデータに変換するにはどうすればよいですか?