node.js程序在Amazon Linux服务器上挂起

时间:2012-03-10 18:59:37

标签: node.js ubuntu amazon-ec2

我在亚马逊上有一个ubuntu服务器,我正在尝试在其上运行node.js程序。该计划只有一行:

console.log('Here I am.');

没有输出,程序也不会退出。

当我运行ps x时,我可以看到一个处于STAT D状态的[node]进程:

  751 ?        D      0:04 [node]

使用sudo kill -9 751无法停止该过程。

在问题出现之前,node.js程序运行得很好,就像我的实际 - 更精细的 - node.js程序一样。

我甚至重新启动了ubuntu服务器并尝试在重启后立即运行单行测试node.js程序。它挂了,没有输出任何东西。

node --version返回

v0.7.6-pre

为什么会这样?这是与Amazon实例,node.js安装或其他相关的问题吗? nginx在同一台服务器上运行得很好,但node.js程序如上所述挂起。

(正如预期的那样,相同的代码在我的本地mac os x环境中运行得很好)

更新:我恢复到0.6.12稳定版,但同样的问题仍然存在。

2 个答案:

答案 0 :(得分:1)

问题解决了(有点)。

这是一个谜。我在Amazon EC2上创建了一个新实例(与我的相同),安装了git,nginx,node.js和我的node.js程序。现在一切正常。

一定是我的实例出了问题。我只是不明白它是什么,但由于我没有重要的实例,我只是把它丢弃了。

问题的原因可能是我最初提取和编译的0.7.6版本。也许这个装置有一些遗留物导致了这种奇特的行为。

答案 1 :(得分:1)

对于遇到此问题的其他任何人,可能与此有关:

"After using yum to upgrade to Amazon Linux AMI 2011.09, t1.micro 32-bit instances fail to reboot."

在我的实例上更新'AKI'似乎解决了我的问题。