我试图了解两者之间的区别
mysql.createConnection
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'example.org',
user : 'bob',
password : 'secret'
});
和
mysql.createPool
var mysql = require('mysql');
var pool = mysql.createPool({
connectionLimit : 10,
host : 'example.org',
user : 'bob',
password : 'secret'
});
在Node.js的mysql模块中。
我已经熟悉 mysql.createConection 。似乎这是与MySQL建立连接的默认方法。
mysql.createPool 到底做什么?
我何时开始使用 mysql.createPool?
与 mysql.createConnection 相比,使用 mysql.createPool 有什么好处?
最佳答案
创建连接时,只有一个连接,该连接将持续到您将其关闭(或被mysql服务器关闭)为止。您可以通过引用将其传递并重新使用,也可以根据需要创建和关闭连接。
池是存储连接的地方。当您从池中请求连接时,您将收到当前未使用的连接或新连接。如果您已经达到连接限制,它将等待连接可用后再继续。这些合并的连接不需要手动关闭,它们可以保持打开状态并易于重用。
您使用哪种方法完全取决于您,因为它们都以两种不同的方式实现了相同的目标。