【发布时间】:2015-10-29 18:02:28
【问题描述】:
我正在使用 MEAN 堆栈开发 Web 应用程序。当代码中出现错误时,整个应用程序崩溃,我必须重新启动服务器(重新运行应用程序)。
这种行为在开发过程中可能不是问题。但是当应用程序投入生产时,如果出现一些意想不到的错误,整个应用程序就会崩溃。我必须时刻关注系统并在发生错误时重新启动它?我在这里错过了什么?
【问题讨论】:
-
您需要更好地处理错误,也许使用 try catch。此外,对您编写的错误和代码的描述也会有所帮助。
-
另外,在某些情况下还有一个可以处理的
'error'事件。例如,这里的代码示例:nodejs.org/api/http.html#http_http_get_options_callback -
这意味着如果抛出一个未处理的错误,那么服务器在 MEAN 堆栈中出现故障?实际上,即使你正确处理错误,有时也会在大型应用程序中抛出一些错误!
-
扪心自问:当你的应用遇到unexpected错误时应该怎么做?根据定义,这是开发人员没有预料到的,因此应用程序最终处于未定义状态的可能性很大。除了崩溃,它应该做什么else? FWIW,请查看
pm2以获取会密切关注的流程管理器。 -
好吧,在 Java EE 世界中,如果抛出错误,该特定部分将无法运行。但其他部分将正常运行。服务器永远不会因为应用程序错误而宕机。
标签: node.js express mean-stack