繁体   English   中英

返回连接到knex数据库池

[英]Return connection to knex db pool

我在节点应用程序中使用knex版本3.10.10,连接到MySQL DB。 我在应用程序中对knex的配置使用池选项配置。

1)我触发查询后是否需要明确返回到池的连接? 如果是,如何

2)在触发查询之前,是否需要对池的连接进行明确的检查?

提前致谢

不需要。也不需要这样做。

Knex为您处理连接池。 您可以根据需要在连接设置中使用以下设置来调整池大小: pool: { min: 0, max: 7 } ,并且文档中还包含指向Knex用于库处理的库的链接(如果您愿意)关于血腥的细节。

Knex文档在此提供了一些信息: 链接

在查询或事务期间,Knex将使用每个连接,然后将其释放回池中。

但是,如果在不使用Promises的情况下实现事务(即,多个SQL语句要作为一个单元保存或取消),则需要显式提交/回滚该事务以正确完成该事务,这还将释放与该事务的连接。事务完成时池化。 (有关Knex Transactions的更多信息,请参见此处 )。

文档中没有这样的信息,但是基于 代码,您可以像这样访问knex

const knex = require('knex')(config);
const pool = knex.client.pool;
console.log(pool);

knexknex使用塔恩池,因此您可以在那里查看它的方法。

PS我不知道你从哪里得到的knex版本(3分的东西),但在此答案时刻的当前版本是0.14.4

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM