Il s'agit en fait d'un problème MySQL et non de Node.js. Vous pouvez utiliser la propriété wait_timeout
de MySQL pour augmenter le nombre de fois où la connexion reste ouverte.
Vérifiez plus de détails sur cette propriété ici
Vous trouverez ci-dessous un exemple de code pour votre singleton qui créera une nouvelle connexion lorsque la connexion actuelle sera fermée. Dans le scénario, vous n'aurez jamais plus d'une connexion active si vous utilisez toujours l'App Singleton pour obtenir la connexion :
getConnection: function() {
var app = common.model.connections.App.getInstance();
if(!app.connection.isConnected()){
//connect if connection is closed.
app.connection.connect();
}
return app.connection;
}