在某个时间点监控活动数据库连接



参考我在这里的问题,我在我的 NodeJS 应用程序中使用第一个字节的时间很慢,使用 Knex 作为数据库库。

版本:

  • 邮政:9.6.1
  • 节点:7.4.0
  • 千内克斯: 0.12.6
  • 角度:1.3

有人建议:

要解决此问题,您需要研究如何使用连接:

  • 池的大小

  • 在所有请求中管理连接的方式

运行 http 请求时,如何查看活动连接以及 knex 如何管理池?如何确保我的连接得到最佳使用?

节点中的池 knex 配置:

pool: {
  min: 2,
  max: 8,
}

使用环境变量运行您的应用程序DEBUG=knex:*当您启动请求时,您将看到非常详细的信息knex内发生的事情 + 时间。

应该给你足够的信息,看看时间在哪里流逝。

如果您想直接从这样的generic-pool请求统计信息:

knex = require('knex')({client: 'pg', connection: 'postgres:///knex_test'})
poolStats = {
  connectionsAvailable: knex.client.pool.availableObjectsCount(),
  connectionsUsed: knex.client.pool.inUseObjectsCount(),
  clientsWaitingForConnection: knex.client.pool.waitingClientsCount(),
};
{ connectionsAvailable: 2,
  connectionsUsed: 0,
  clientsWaitingForConnection: 0 }

相关内容

  • 没有找到相关文章

最新更新