cPanel 主机上的节点应用程序 运行 在闲置 30 分钟后关闭

Node app running on cPanel hosting shuts down after 30 minutes idle

我有一个 REST api 节点应用程序。 一旦它在本地主机上 运行 ,它就会运行直到我停止开发调试,没有错误。 我把它移到了我的 cPanel 主机上,安装了一个节点应用程序。 它的启动与本地主机相同。 但在闲置 30 分钟后,它会关闭。 此后的下一个请求将重新启动应用程序。 日志中没有崩溃或错误,只有重新启动消息。

我知道这是免费托管的默认行为,就像 但我要为这个托管包付费。

有谁知道... 这是 cPanel 托管节点应用程序的默认行为,还是我的应用程序造成的(例如使用过多内存或 cpu? 是否有任何可以编辑的设置来更改此设置?

根据 the docs, cPanel uses something called Phusion Passenger to run Node.js. In turn, Passenger docs 显示默认的“空闲时间”为 5 分钟,默认值为 passenger_min_instances = 1。不知道 cPanel 是否更改了默认设置,或者托管服务提供商是否更改了默认设置。我建议在任何情况下就此问题联系托管服务提供商,并具体询问这些选项 - 他们可能能够为您提供帮助或调整服务。

节点应用程序的启动时间取决于它正在做什么。 rest-api 可能以毫秒为单位,而加载语料库或训练数据集(我的是)的小型人工智能应用程序最终可能需要 30 秒以上。然而,用户数量不足以保证专用服务器,因此 work-around 是使用 CRON 调用端点,使应用程序保持活动状态。

不完美,但如果您使用 aws lambda,这种类型的东西可能会有用,它调用第 3 方服务,并根据所花费的时间收费。每一毫秒都很重要。