node.js中mysql連接池的使用
阿新 • • 發佈:2017-07-24
lease package lba ref table mysql mod select something
https://cnodejs.org/topic/58378543bde2b59e06141f5a
起初的做法是創建一個連接然後使用,後來發現一段時間後會出現卡死不響應的情況,只有重啟nodejs服務,搜索一番後想到了用連接池,經測試,不再出現卡死不響應情況。
參考鏈接: https://www.npmjs.com/package/mysql http://blog.csdn.net/lovingshu/article/details/41721233
Node.js mysql連接池模塊
1,安裝node的mysql模塊 npm -install -g node-mysql
2,建立一個類庫,就叫mysql_pool.js吧,然後內容如下:
var mysql=require("mysql");
var pool = mysql.createPool({
host: ‘localhost‘,
user: ‘user‘,
password: ‘password‘,
database: ‘database‘,
port: port
});
var query=function(sql,options,callback){
pool.getConnection(function(err,conn){
if(err){
callback(err,null,null);
}else{
conn.query(sql,options,function(err,results,fields){
//釋放連接
conn.release();
//事件驅動回調
callback(err,results,fields);
});
}
});
};
module.exports=query;
3,在js類使用如下
var query=require("./lib/mysql_pool");
query("select * from table where id=?", [1], function(err,results,fields){
//do something
});
node.js中mysql連接池的使用