node.js - Angular 8 Universal(服务器端渲染)应用程序崩溃
问题描述
我已经在 Digital Ocean 的服务器 droplet 中部署了一个 Angular 8 通用应用程序。它正在生产中运行。服务器配置为 4GB 内存和 2 个 vCPU。该应用程序通过服务器中的 nodejs 运行。它已经运行了一个多月,直到最近它突然开始在不确定的时间内崩溃。由于它在我客户的计算机浏览器中运行,我不知道有什么方法可以监控他们控制台中的错误。我还使用 NOHUP 命令运行此应用程序,该命令将所有服务器端节点 js 日志转储到 nohup.out 文件中。但是 nohup.out 文件没有显示任何有关崩溃的信息。
围绕撞车事件发生的事情开始发生。1. 我推送了一个与应用程序的引导完全无关的更新。据我了解,Angular Universal 仅呈现初始视图并将其发送到客户端浏览器。之后,浏览器负责其余的工作。
该应用程序使用 websocket 与用 Java 编写的后端应用程序保持双向连接。另外我不认为 WS 是原因,因为在实现 WS 功能后,它运行了一个多星期还不错。
第三,我注意到有一些图像链接(网站的)是从 CDN/Edge 服务器加载的,在过去的几天里,位于 CDN 服务器中的一些静态文件需要很长时间才能加载/下载。加载这些文件的响应时间有时会达到 25-26 秒。由于这些静态文件是在启动时加载的,那么加载静态文件的延迟是否会导致 Node JS 在启动时渲染页面时出现任何类型的超时事件?
正如你所理解的,我不知道如何调试这个东西。无论如何,是否有人面临与 Angular Universal 类似的崩溃问题并帮助我指出正确的方向?谢谢
解决方案
推荐阅读
- android - 如何在 xml 中逻辑地构造 Android 视图
- r - 绘制因子(分类数据)的相关矩阵的等价物?和混合类型?
- git - 用于 dist/production 的 Git 分支
- mongodb - 我正在研究 MongoDB 模式设计。有一个混乱
- java - 使用三个堆栈的回文(Java)
- json - Terraform 语法和格式有什么区别?
- java - 在 Spock 中将 Lambda 函数定义为参数约束
- javascript - 创建 HTML 边栏时使用存储的属性
- jquery - Jquery - 模糊和keyup多次触发
- android - 如何将字符串数组返回到java JNI