Тимур Шемсединов, у меня тут вопрос по поводу пула соединений с БД.
Вот к примеру в основном файле приложения я создаю глобальный пул
app.js
global.appChat = {};
appChat.pool = mysql.createPool(config.get('mysql'));
Потом в модуле user создаю методы для работы с БД
user.js
module.exports.getUserById = function(userId, callback){
$sql = 'SELECT * users WHERE id = ?';
appChat.pool.getConnection(function(err, connection) {
if (err) throw err;
connection.query($sql, [userId], function(err, rows, fields) {
if (err) throw err;
connection.release();
callback(null, rows.length ? rows[0] : null);
});
});
};
module.exports.getUsers = function(callback){
$sql = 'SELECT * FROM users';
appChat.pool.getConnection(function(err, connection) {
if (err) throw err;
connection.query($sql,function(err, rows, fields) {
if (err) throw err;
connection.release();
callback(null, rows);
});
});
};
Теперь когда я буду вызывать где либо методы модуля user то каждый раз будет создаваться новое соединение с БД и как я понял вызов connection.release(); не закрывает соединение (т.к в доках для node-mysql написано что все соединения пула закрываются вызовом pool.end) то они будет постоянно открыты и накапливаться?