【问题标题】:Trigger causing application to become unresponsive触发器导致应用程序变得无响应
【发布时间】:2018-01-25 22:24:00
【问题描述】:

几天来,我一直遇到节点应用程序无响应的问题。它从我添加新触发器开始。触发器在对表的每次新插入时运行,并且触发器函数将所有超过一个月的行复制到存档表中。通常我们可以每 5 秒插入 10 条或更多记录;我认为这不会对数据库造成太大的负担。节点应用使用 pg 模块。

我发现当我启用触发器时,应用程序会停止运行。当我禁用它时,大量积压的请求会淹没系统,应用程序将再次开始正常工作。此问题仅在运行约 10-15 分钟后才会出现。我认为这不是问题,因为大多数时候触发器没有什么可做的,但显然我在这里遗漏了一些东西。对记录插入运行触发器是否会产生如此多的开销,导致数据库突然停止?

【问题讨论】:

    标签: node.js postgresql express triggers node-postgres


    【解决方案1】:

    使用pg_stat_statementspg_stat_statements.track = all 找出哪个查询占用了您的数据库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多