msa6886
@msa6886

Как переподключаться при отключении БД?

Использую модуль 'mysql' для node.js . Сервер подключается к mysql удаленно. При отключении БД сервер постоянно падает и приходится включать вручную через "systemctl" (systemctl по какой-то причине делает около 10-и включений через 1 секунду и перестает). На гитхабе нашел код который делает reconnect пока соединение не будет восстановлено.
function handleDisconnect(myconnection) {
    myconnection.on('error', function (err) {
        console.log('\nRe-connecting lost connection: ' + new Date());
        con.destroy();
        con = mysql.createConnection(options);
        handleDisconnect(con);
        con.connect();
    });
}
handleDisconnect(con);

Функция работает как следует.

Однако когда начинаются запросы в БД( query("SELECT ..." ), то при отключенной БД срабатывает обработчик ошибок if(err) throw err; и сервер падает.
Какие имеются стандартные средства чтобы избежать падения сервера?
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
BenderLib
@BenderLib
JS
конструкция:
try { 
... 
} catch(err) {
...
}


тем самым сервер падать не будут подробнее тут
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы