NodeJs不住在aws中

我在AWS微型实例上部署了一个NodeJS的Bitnami AMI。 开始我的节点应用程序后,一切工作正常。

经过一段时间没有任何活动,连接到端口:3000的应用程序似乎closures。 当刷新页面时发生这种情况我的浏览器给出了消息:

Network Error (tcp_error) A communication error occurred: "Connection refused" The Web Server may be down, too busy, or experiencing other problems preventing it from responding to requests. You may wish to try again at a later time. 

AWS控制台显示实例仍在运行,Bitnami构build仍然在端口80上响应标准消息。

正如我们在评论中所讨论的那样,问题是将节点进程绑定到SSH会话。

您可以使用nohupscreen在未绑定到会话的实例中启动节点进程。 我build议使用screen因为返回已启动实例的function对于维护/更新至关重要。

相关: 如何运行进程作为背景,永不死亡

相关: 命令行界面工具将节点作为服务运行

永远( https://github.com/nodejitsu/forever )也是这种事情的一个有用的工具,它比nohup或屏幕给你一个更多的控制。

除了configurationEC2实例外,您还可以使用AWS的PaaS解决scheme,即Elastic Beanstalk。 他们也支持Node.js,使用这个服务来部署你的应用程序是非常容易的。