我相信同样的node-mysql包提供了连接池。可以看一下。
var express = require("express");
var mysql = require('mysql');
var app = express();
var pool = mysql.createPool({
connectionLimit : 100,
host : 'localhost',
user : 'root',
password : '',
database : 'address_book',
debug : false
});
function handle_database(req,res) {
pool.getConnection(function(err,connection){
if (err) {
connection.release();
res.json({"code" : 100, "status" : "Error in connection database"});
return;
}
console.log('connected as id ' + connection.threadId);
connection.query("select * from user",function(err,rows){
connection.release();
if(!err) {
res.json(rows);
}
});
connection.on('error', function(err) {
res.json({"code" : 100, "status" : "Error in connection database"});
return;
});
});
}
app.get("/",function(req,res){-
handle_database(req,res);
});
app.listen(3000);
阅读完整的案例研究(有和没有池): http://codeforgeek.com/2015/01/nodejs-mysql-tutorial/
该案例涉及IT技术,介绍了如何在Node.js中使用MySQL数据库。如果您对此感兴趣,可以点击链接查看完整的案例研究。