我在ibm云上的节点应用程序不断崩溃

mot*_*ots -1 node.js ibm-cloud

我在IBM云上有一个节点应用程序,并且每次都在大多数时间未运行时不断崩溃,我什至将每个实例的内存增加到了1 GB,如何诊断问题出在哪里?这是我的manifest.yml。因此,我处于一种情况下,我必须不断检查该应用程序并进行手动重启


applications:
- instances: 1
  timeout: 600
  name: TicketSokoChatbot
  buildpack: sdk-for-nodejs
  command: npm start
  memory: 1024M
  random-route: true
Run Code Online (Sandbox Code Playgroud)

这是错误:
an instance of the app crashed: Instance never healthy after 1m0s: Failed to make TCP connection to port 8080: connection refused; process did not exit

Chr*_*now 5

在Cloud Foundry上运行时,将为您设置端口。您必须使用可以在环境变量中找到的端口PORT,例如

app.listen(process.env.PORT || 3000);
Run Code Online (Sandbox Code Playgroud)

如果端口不是引起问题的原因,那么您下一步可以尝试更改运行状况检查超时。

如果这对您不起作用,则Cloud Foundry文档将提供有关故障排除的信息,尤其是请查看“ 应用程序无法启动 ”部分。这是cloud Foundry文档中列出的调试步骤之一:

查找应用失败的原因并修改您的代码。运行cf events APP-NAME并cf logs APP-NAME --recent查找类似于以下内容的消息:

2014-04-29T17:52:34.00-0700 app.crash index: 0, reason: CRASHED, exit_description: app instance exited, exit_status: 1

这些消息可能标识内存或端口问题。如果是这样,请在重新检查并修复应用程序代码时以此为起点。

在尝试了所有调试步骤之后,如果仍然无法解决问题,请使用所尝试的内容向问题中添加更多信息。

我建议任何构建Cloud Foundry应用程序的人熟悉以开发人员为中心的Cloud Foundry文档“ 部署和管理应用程序”。