Node.js创建数据库连接池

原创 2015年11月20日 15:13:57

在开发项目时,建立一个数据库连接所消耗的性能成本是比较高的,如果为每一个接收到的客户端请求都建立一个或者多个数据库连接,将会严重降低应用程序的性能,因此,通常需要为多个数据库连接创建并维护一个连接池,当连接不再需要使用时,这些连接可以缓存在连接池中,当接收到下一个客户端请求时,可以从连接池中取出连接并重新利用,而不需要再重新建立数据库连接

在mysql模块中,使用createPool方法创建连接池,在建立了连接池之后,可以直接使用连接池对象的getConnection方法从连接池中获取一个连接,如果连接池中没有可用连接,将隐式的建立一个数据库连接

connection.release() 当一个连接不需要使用时,使用该方法将其归还到连接池中

connection.destroy() 当一个连接不需要使用且需要从连接池中移除时,可以使用该方法

pool.end() 当一个连接池不需要使用时,可以使用该方法关闭连接池

注意:可以使用createPool方法的属性connectionLimit设置连接池中的最大连接数,默认为10

//创建并使用连接池对象
var mysql = require('mysql');
var pool = mysql.createPool({
	host : 'localhost',
	port : 3306,
	database : 'test',
	user : 'root',
	password : ''	
})
pool.getConnection(function(err,connection){
	if(err){
		console.log('与mysql数据库建立连接失败');
	}else{
		console.log('与mysql数据库建立连接成功');
		connection.query('select * from admin',function(err,rows){
			if(err){
				console.log('查询数据失败');
			}else{
				console.log(rows);
				pool.end();
			}
		})
	}
})

版权声明:

相关文章推荐

Nodejs 数据库连接池generic-pool

generic-pool数据库连接池支持mysql、mongodb、redis等数据库 安装generic-pool模块 npm install generic-poll --save 创建my...

NodeJs——(13)用连接池来控制mysql(入门版)

(34)用连接池来控制mysql(入门版) ①第一步,创建一个连接池:(和之前普通创建mysql的连接对象很像) var mysql = require("mysql"); var pool = ...

nodejs解决mysql和连接池(pool)自动断开问题

最近在做一个个人项目,数据库尝试使用了mongodb、sqlite和mysql。分享一下关于mysql的连接池用法。项目部署于appfog,项目中我使用连接池链接数据库,本地测试一切正常。上线以后,经...

nodejs连接mysql之使用连接池pool

不使用连接池的坏处想必试过的人都已经知道了,我这里给出一个使用连接池的范例,实现的较为简单,最好不要直接用。连接池范例://导入所需模块 var mysql=require("mysql"); ...

node.js中mysql连接池的使用

前言,如果不想程序在查询数据时卡死或等待过长时间,一般不推荐在node中开启一个连接后全部查询都用这个链接并且不关闭,因为,你试了就知道为什么了 Node.js mysql连接池模块 1,安装no...

nodejs之mysql连接池

参考:http://www.oschina.net/code/snippet_95289_25000      github地址: https://github.com/obullxl/osnode-...

Nodejs+express+SqlServer

最近研究Nodejs,连接SQLSERVER挺麻烦,资料也很少,wo'jiu
  • WuLex
  • WuLex
  • 2014-06-12 19:20
  • 2485

Node.js使用MySQL的连接池

使用Nodejs+MySQL肯定比PHP和MySQL的组合更适合做服务器端的开发。 使用Nodejs你会从他的异步行为中获益良多。比如,提升性能,你无须在从已有的MySQL数据库迁移到其他的NoSQ...

Node.js连接数据库总结

在node中输入npm install mysql 电脑必须安装mysql数据库,创建一个数据库,建立一个表,本教程中用的是nodesmaple,表名是t_user 新建a.js代码: var mys...
  • Joyhen
  • Joyhen
  • 2015-03-11 09:59
  • 5369

node.js中mysql数据库连接池

在MySQL模块中,使用createPool方法创建连接池,在建立了连接池之后,可以直接使用连接池对象的getConnection方法从连接池中获取一个连接,如果连接池中没有可用连接,将隐式的建立一个...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)