将 nodejs 服务器保留在 azure VM 运行

keep nodejs server on azure VM running

我有一个 Windows Azure VM(linux 服务器 14.04)运行 并且能够在我的 mac/windows 机器上使用命令行访问该 VM。我是此 Azure VM 上的 运行 一个 node.js 服务器和一个 mongodb 实例。

问题是 VM 上的这个 nodejs 服务器在一段时间后断开连接(超时之类的事情)。 VM 上的服务器是否可能无限期地运行并继续为请求提供服务?

PS:我的 VM 无限期且正确地 运行,但是 VM 上的 nodejs 服务器本身在一段时间后超时。请帮忙!

谢谢。

它可能只是崩溃了!

准系统节点应用程序不会自行监控。 如果您来自 ASP.NETPHP 等其他 Web 框架/平台,您有 IISApache 为您监控您的应用程序,这听起来可能有点疯狂,这很好不错的TBH。在 node.js 中选择 process manager / 监控系统。根据我的经验,最受欢迎和最受支持的 PMsExpressjs 文档中列出的那些:http://expressjs.com/advanced/pm.html

因为 Azure VM 不会自行休眠或关闭,也不会停止其上的任何服务器 运行。 根据您的描述

the nodejs server on the VM itself times out after sometime

这个问题似乎与@svenskunganka 所说的相同。

您可以按照@Daniel 和@svenskunganka 的建议,利用 PM2 检查“有时”发生的错误。

当您使用 PM2 部署 nodejs 项目时,它会自动监控应用程序并记录错误。您还可以从 Azure 门户监视器面板监视 VM 指标(例如 CUP 使用情况、网络 in/out)。