我正试着用 loopback - node - mysql
其中并行db(mysql)调用。node和mysql之间已经存在持久连接。当进行并行调用时,将创建到mysql db的附加连接以满足请求。但是在并行调用和函数完成之后,对mysql的新连接仍然存在。所以从长远来看,很多连接都是通过mysql数据库建立的,使用后这些连接不会关闭。
这是我的密码
function getSubTypeIdAndOrderForNewTimelineStory(gameId, name) {
var deferred = $q.defer();
async.parallel([
function (callback) {
getTimelineStorySubType(name).then(function (timelineStorySubType) {
callback(null, timelineStorySubType.id);
}).fail(function (error) {
callback(error);
});
},
function (callback) {
getLastTimeLineStory(gameId).then(function (gameTimelineStory) {
callback(null, gameTimelineStory? gameTimelineStory.order+1: 1);
}).fail(function (error) {
callback(error);
});
}
], function (error, result) {
if(error){
deferred.reject(error);
}
else {
var response = {
gameTimelineStorySubTypeId : result[0],
order : result[1]
}
deferred.resolve(response);
}
});
return deferred.promise;
}
所以要么我需要知道现有的未使用连接的数量,要么在mysql中设置一个超时来终止未使用的连接。
谢谢
1条答案
按热度按时间kadbb4591#
在datasource对象中,可以找到需要从池中删除的空闲连接。