我在Node.js方面有点新鲜,现在很棒。我在本地运行节点(/ w express)时遇到了一个小问题 - 在第10个请求之后的每个请求都挂起并在Chrome Inspect Network中标记为Pending。
至于模块,我使用较少的中间件,快递,玉和MySQL,我只做一个SQL查询(使用mysql.createPool)。为什么此请求仍处于待定状态,我该如何解决此问题?
由于我是Node的新手,我不确定我是否已经尝试了所有内容,所以任何帮助都会受到赞赏!
答案 0 :(得分:3)
听起来你没有发布你从池中回来的MySQL连接。如果不这样做,游泳池将耗尽免费连接并开始等待任何可用(并在此之前停止请求)。
所以你的代码看起来应该类似于:
var pool = mysql.createPool(...);
...
// in your request handler:
pool.getConnection(function(err, connection) {
if (err) ...handle error...;
connection.query(function(err, results) {
// release connection
connection.release();
// handle results
...
// send back a response
res.send(...);
});
});