【问题标题】:upstart & node.js app "stop: Unknown instance:"新贵和 node.js 应用程序“停止:未知实例:”
【发布时间】:2012-03-09 22:45:00
【问题描述】:

我在 ubuntu 和 node.js 应用程序上遇到了一些麻烦。

使用 upstart 脚本一切正常。在我部署新代码之前,启动、停止、状态等都按预期工作。更改未反映在正在运行的应用程序中。我推断 stoping 和 starting 应用程序没有加载新代码。

我在正在运行的守护进程的 pid 上做了一个手动 kill,我认为这是我出错的地方。

目前,如果我 initctl list 我在列表中看到我的应用程序:

mynodejs.app stop/waiting

当我start mynodejs.app 时,它似乎开始了:

mynodejs.app start/running, process 16228

但是,当试图阻止它时:

stop: Unknown instance:

还有……

status mynodejs.app
mynodejs.app stop/waiting

...尽管应用程序已启动并正在运行。

【问题讨论】:

  • 您实际上应该为此发布答案并接受它。
  • 添加你的答案 - 经验教训:当你使用 upstart 时,你不应该使用 kill 手动终止进程。

标签: node.js ubuntu upstart


【解决方案1】:

我会回答我自己的问题...

重新启动 init 进程清除一切。

sudo /sbin/telinit q

我需要杀死我的应用程序的恶意实例。之后,使用startstop 按预期工作。

【讨论】:

  • 我也有同样的情况,但是重启init进程没有帮助
【解决方案2】:

使用自动监控->重启,可以解决这个问题。 设置monit 这样做在howtonode.org 上进行了描述,但更有效的是here。我发现 howtonode.org 指南的 cmets 对于其他人使用 Upstart 设置 Ubuntu 的方法非常有用,可惜它包含在这篇文章中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-08
    • 2012-10-29
    • 2014-02-23
    • 1970-01-01
    • 2015-01-04
    • 2015-04-08
    • 2012-06-20
    • 1970-01-01
    相关资源
    最近更新 更多