1

我正在使用pg-promise(和底层的pg-pool库)。

当我短暂地拔掉我的 pg 数据库上的插头(断开 TCP 连接)时,我收到connect ETIMEDOUT错误(预期的)但是池需要很长时间才能重新建立连接。就像在 10 分钟的顺序。

这是我如何使用的片段pg-promise

  const pgp = pgPromise({
    error(err, e) {
      if (e.query) {
        // Do stuff
      }
    },
  });

...

  const pgpArgs = {
    host,
    port,
    database,
    user,
    password,
    max,
    idleTimeoutMillis: 5000,
  };

  const db = pgp(pgpArgs);

我从作者那里看到了这个潜在的答案,但我不想仅仅为了重新建立池而杀死我的整个过程。

除了重新启动nodejs进程之外,有没有办法强制池中的客户端重新连接?

提前致谢。

4

0 回答 0