求各位高手帮忙看看问题出哪里了? 小弟用的是mysql模块,当一个页面同时加载3-4个请求的时候 数据库中就会出现多个sleep状态的连接,mysql配置了connectionLimit 为10 ,所以当从A页面切到B页面,B切到A页面反复几次,就会出现阻塞情况,我也反复看了官方api,感觉没有地方有问题,求解答,除了修改数据库wait timeout的时间外还有什么解决方案没?
var mysqlUtil = (function () { var _pool = null; var _logger = null;
var util = {};
// init util.init = function () { if (!_pool) { _pool = require(’…/datasource/mysql.js’); } _logger = require(’./logger.js’); _pool.on(‘release’, function (connection) { console.log(‘Connection %d released’, connection.threadId); }); return util; };
// query util.query = function (sql, args, cb) { _logger.info(sql); _pool.getConnection(function (err, connection) { if (err) { _logger.error(err.stack); return false; } else { connection.query(sql, args, function (err, result) { _pool.releaseConnection(connection); if (err) { _logger.error(err.stack); return false; } else { cb(err, result); } }); } }); };
return util.init(); })();
module.exports = mysqlUtil;