Това всъщност е проблем на MySQL, а не на Node.js. Можете да използвате свойството wait_timeout
на MySQL, за да увеличите времето за поддържане на връзката отворена.
Проверете повече подробности за това свойство тук a>
По-долу е даден пример за код за вашия singleton, който ще създаде нова връзка, когато текущата бъде затворена. В сценария никога няма да имате повече от 1 активна връзка, ако винаги използвате приложението Singleton, за да получите връзката:
getConnection: function() {
var app = common.model.connections.App.getInstance();
if(!app.connection.isConnected()){
//connect if connection is closed.
app.connection.connect();
}
return app.connection;
}