【问题标题】:Node app deployed to Heroku with nodemon randomly crashes使用 nodemon 部署到 Heroku 的节点应用程序随机崩溃
【发布时间】:2016-12-06 02:18:26
【问题描述】:

我在 Heroku 上的免费测功机上部署了一个节点应用程序。此应用程序在本地完美运行。

在 Heroku 上,应用似乎部署成功。访问该网站或使用 heroku open 似乎总是在使用 git push heroku master 部署后不久提供一个工作网站。

不幸的是,通常几分钟后,应用程序就会崩溃。显示以下消息:

使用命令heroku logs --tail 检查日志时,我看到以下失败。

编辑信息显示正确的服务器连接信息。当网站运行时,它会显示来自数据库的正确数据。

问题我不知道这个看似随机的错误是从哪里来的。我认为这与连接到 MySQL 有关,但我不知道为什么应用程序会重新启动或尝试重新连接。

我还将服务器启动脚本更改为只执行node lib/application.js 并再次遇到相同的错误。

非常感谢有关此错误可能来自何处、要使用的不同 heroku 配置等的任何信息。

我的 npm 脚本如下。服务器上没有运行任何构建、监视或清理脚本。目前我正在部署之前构建它。

"scripts": {
    "start-local": "nodemon --debug lib/application.js --ignore lib",
    "start": "nodemon --debug lib/application.js --ignore lib",
    "watch": "npm run clean:css && npm run watch:css & npm run watch:js",
    "build:js": "babel src -d lib",
    "watch:js": "nodemon --watch src --exec npm run build:js",
    "build:css": "stylus -u nib res/styles/src/index.styl -o res/styles/lib",
    "watch:css": "stylus -u nib res/styles/src/index.styl -o res/styles/lib -w",
    "clean:css": "rm -rf res/styles/lib && mkdir -p res/styles/lib"
  },

在 application.js 中运行的代码可以在这里找到:http://pastebin.com/4zvBaHK0

【问题讨论】:

标签: javascript node.js heroku deployment nodemon


【解决方案1】:

这不是随机崩溃 - 应用程序在关闭与 MySQL 的连接时崩溃。您的应用需要数据库重新连接逻辑。

【讨论】:

  • 是否可以在没有连接池的情况下处理节点中的 MySQL 断开连接?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-10
  • 2018-02-11
  • 1970-01-01
  • 1970-01-01
  • 2017-07-01
  • 2015-10-11
相关资源
最近更新 更多