https://cnodejs.org/topic/58378543bde2b59e06141f5a
起初的做法是创建一个连接然后使用,后来发现一段时间后会出现卡死不响应的情况,只有重启nodejs服务,搜索一番后想到了用连接池,经测试,不再出现卡死不响应情况。
参考链接: https://www.npmjs.com/package/mysql http://blog.youkuaiyun.com/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 });