Sequelize是否为每个查询执行打开与数据库的新连接

问题描述 投票:1回答:1

我正在使用nodejs和SequelizeJS到我的sql数据库。

我验证连接后,

sequelize
  .authenticate()
  .then(() => {
    console.log('Connection has been established successfully.');
  })
  .catch(err => {
    console.error('Unable to connect to the database:', err);
  });
  1. Sequelize每次执行SQL命令时都会打开一个新连接,还是保持打开连接并重新使用它?
  2. 我该如何验证?
node.js sequelize.js feathers-sequelize
1个回答
1
投票

Sequelize是否在每次执行SQL命令时打开一个新连接,或者它是否保持打开连接并重新使用它?

Sequelize将尝试重用其池中的现有连接。默认配置如下所示。你可以查看源代码qazxsw poi

here

如果应用程序需要更多连接且当前连接数小于max,则sequelize将尝试创建新连接。

我该如何验证?

您可以在sequelize中的const defaultPoolingConfig = { max: 5, min: 0, idle: 10000, acquire: 10000, evict: 10000, handleDisconnects: true }; 方法中添加日志记录,以查看是否建立了新连接。它也应该可以在db日志中,但我不确定。

© www.soinside.com 2019 - 2024. All rights reserved.