입니다. 그래서 나는 nodejs를 매우 익숙하게 사용하고 있습니다. 내가 만들고자하는 서비스가 있는데, 나는 단지 mysql 연결을 connection.connect()
으로 다시 지킬 수 없다는 것을 알았다. 그래서 연결을 계속하는 방법을 생각해 냈습니다. 그러나이 연결을 유지하는 것이 올바른지 확실하지 않았습니다. 코드 중간에 주석 처리 된 부분을 살펴볼 수 있습니까?익스프레스에서 mysql 연결을 유지하면
app.get('/keyboard', function(req, res){
connection.connect();
connection.query("SELECT `hour` from timetable WHERE `reserved` = '0'", function(err, rows, fields){
if(err) throw err;
var buttons = [];
for(var i = 0; i < rows.length; i++){
buttons.push(rows[i].hour);
}
console.log("available time: " + buttons);
var return_data = {
"type" : "buttons",
"buttons" : buttons
};
//console.log(return_data);
res.send(return_data);
});
connection.end(); // connection ends here
//connection.connect() doesn't create a new connection.
connection = mysql.createConnection({ // another connection like this?
host : 'localhost',
user : 'user',
password : 'pw',
database : 'db'
});
});
자세한 설명 주셔서 감사합니다! 그래서 당신이 말하는 것은 제가 수영장을 사용할 경우'connection.end()'를 호출하는 것에 대해 걱정할 필요가 없다는 것입니다, 그렇습니까? – hklee93
@ hklee93 아, 미안하지만,'getConnection' 시나리오의 경우, connection.release();를 사용하여 풀로 연결을 해제해야합니다. 그러나 만약 당신이 풀 ('pool.query')에 질의 함수 direclty만을 호출하면'release' 또는'end'를 사용할 필요가 없습니다. –
고마워요! 나를 통해 가서 그들을 시도하자. – hklee93