提问者:小点点

SequelizeConnectionRefusedError/eConnRefied上的节点应用程序崩溃


我的整个节点应用程序崩溃,“未处理的承诺拒绝”SequelizeConnectionRefusedError时,由于某种原因(例如数据库负载过大)数据库拒绝连接。

我想找到一个解决方案,使应用程序不崩溃,如果可能的话,尝试重新连接。

这就是我连接数据库的方式

const db = new Sequelize(DATABASE_URL, {
 logging: false,
 pool: {
 max: parseInt(NUMBER_PG_CONNECTIONS),
 min: 1,
 idle: 10000,
 acquire: 30000,
},
dialectOptions: {
 ssl: {
  require: true,
 },
},
ssl: true,
});

共1个答案

匿名用户

那么,您可以考虑nodemonforeverpm2或类似的东西--它们应该保证您的服务器保持开机状态(在崩溃后恢复)。

然而,它往往不止于此。例如,如果您失去了与数据库的连接,您真的希望节点服务器运行吗?或者,如果您的连接正在耗尽,那么可能存在一个设计问题/错误,从而导致连接泄漏?