node.js - Azure Node expressjs应用程序随机崩溃,没有错误

标签 node.js azure express docker

我用expressjs构建了一个简单的 Node 应用程序,它应用了socket.io。 为了使套接字能够在 azure 上以集群模式进行通信,该应用程序还使用 azure 中的 redis 缓存。

该项目已部署到使用 docker 容器的 Linux Web 应用程序下的 azure。

问题是,我在 18 小时到 36 小时后面临应用程序的随机崩溃(正如我所见),当您访问该网址时,您会看到 nginx 错误网页。

我使用以下代码来检测日志中的错误,并将其部署到我拥有的 Linux 计算机上的临时环境

process
  .on('unhandledRejection', (reason, p) => {
    logger.error(reason, 'Unhandled Rejection at Promise', p)
  })
  .on('uncaughtException', err => {
    logger.error(err, 'Uncaught Exception thrown')
    process.exit(1)
  })

在登台机器上根本没有崩溃。

我开始认为这与 azure 上的 docker 容器有关,但我没有任何迹象表明这样的事情。

** 重要的是,网络应用程序设置为始终处于事件状态 **

任何想法或建议

最佳答案

我以前也遇到过类似的事情。就我而言,这是因为我没有日志轮转,因此日志文件会成长为一个独特的巨型文件,导致服务器无法写入它。

关于node.js - Azure Node expressjs应用程序随机崩溃,没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52891706/

相关文章:

javascript - 在 React 中使用 AJAX 获取服务器数据

javascript - 通过 Ajax 请求发送后无法解析 JSON

azure - 在 ACI 或 AKS 上部署的 AMLS 模型的 1 分钟服务超时

azure - 错误 : The specified registry key does not exist. 尝试使用网络凭据连接到 TFS 2012。

azure - 是否可以在Release中获取Artifact Name?

javascript - 无法在 Node js的模块导出中正确返回

javascript - 限制用户访问其他用户配置文件

javascript - 如何将jenkins与mean stack应用程序集成

javascript - 快速应用程序位于 Electron 应用程序内部的网址是什么

node.js - nginx 反向代理设置在执行 CORS 请求时不保留 session ID