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——(13)用连接池来控制mysql(入门版)

(34)用连接池来控制mysql(入门版) ①第一步,创建一个连接池:(和之前普通创建mysql的连接对象很像) var mysql = require("mysql"); var pool = ...
  • qq20004604
  • qq20004604
  • 2016年07月08日 13:50
  • 1639

Nodejs 数据库连接池generic-pool

generic-pool数据库连接池支持mysql、mongodb、redis等数据库 安装generic-pool模块 npm install generic-poll --save 创建my...
  • pretent
  • pretent
  • 2015年05月09日 21:21
  • 2367

node.js中mysql数据库连接池

在MySQL模块中,使用createPool方法创建连接池,在建立了连接池之后,可以直接使用连接池对象的getConnection方法从连接池中获取一个连接,如果连接池中没有可用连接,将隐式的建立一个...
  • qq_27626333
  • qq_27626333
  • 2017年01月04日 11:02
  • 1424

基于express框架下Node.js+MySQL连接池的数据库增添操作

题记:这几天一直在学习Node以及关系型数据库的知识,刚刚接触到了express框架,就想利用express框架,实现一个通过ajax操作来向数据库内增添数据的功能。正文:话不多说,现在我们就来一起看...
  • wuxy720
  • wuxy720
  • 2017年12月24日 17:34
  • 104

nodejs连接sqlserver数据库简单封装-mssql模块

一 安装mssql模块 npm install mssql 二 封装连接数据库代码 db.js: /*2016年7月14日17:02:15 QQ: 452076103 意外金喜 mssql模块简...
  • zzwwjjdj1
  • zzwwjjdj1
  • 2016年07月14日 20:08
  • 10843

Node.js使用MySQL的连接池

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

nodejs连接mysql之使用连接池pool

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

Node.js在MySQL中存储数据 & 创建连接池

1.首先安装mysql客户端开发包 npm install mysql    然后引用mysql模块 var mysql = require('mysql');2.建立连接&关闭连接  (1)crea...
  • qq_31280709
  • qq_31280709
  • 2016年08月24日 10:38
  • 3164

Node.js 连接 postgreSQL数据库 (使用连接池pool)

http://www.tuicool.com/articles/I3MNNbm
  • u013992330
  • u013992330
  • 2017年04月27日 17:38
  • 1390

使用node-oracledb创建连接池,外部建立连接

接触node也有一小段时间了,之前练习一直使用的是mariadb(centos默认这个),使用node加载mysql驱动使用一切正常 碰到的绝大部分问题都可以查到,案例代码也相当多 但是近期由于业...
  • Banterise
  • Banterise
  • 2016年06月07日 15:49
  • 1994
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Node.js创建数据库连接池
举报原因:
原因补充:

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