Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Express/node服务器随机崩溃,events.js ECONNRESET_Node.js_Mongodb_Express - Fatal编程技术网

Node.js Express/node服务器随机崩溃,events.js ECONNRESET

Node.js Express/node服务器随机崩溃,events.js ECONNRESET,node.js,mongodb,express,Node.js,Mongodb,Express,我正在使用Node.js、Express和Mongoose构建一个应用程序。我正在使用Cloud9作为开发环境。我使用express generator创建了我的应用程序的基础,并一直添加到它上 我似乎随机得到这个错误,服务器停止。它不会发生在任何特定事件期间,而是发生在页面加载之间。这似乎不会发生在任何特定的页面上 我一直都会犯这样的错误,我经常不得不重新开始 events.js:141 throw er; // Unhandled 'error' event ^ E

我正在使用Node.js、Express和Mongoose构建一个应用程序。我正在使用Cloud9作为开发环境。我使用express generator创建了我的应用程序的基础,并一直添加到它上

我似乎随机得到这个错误,服务器停止。它不会发生在任何特定事件期间,而是发生在页面加载之间。这似乎不会发生在任何特定的页面上

我一直都会犯这样的错误,我经常不得不重新开始

events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: read ECONNRESET
    at exports._errnoException (util.js:870:11)
    at TCP.onread (net.js:552:26)
当我遇到这个错误时,MongoDB不会崩溃。我只需要再次启动节点服务器,它就可以正常工作了。直到它再次随机崩溃

我不确定这个错误是否只是C9的一个副作用,如果是的话,我不担心它,我只是不希望它在生产中发生,特别是因为我不能很容易地看到日志

如果我真的无法“处理错误”,我想知道应该在哪里处理,我更希望我的服务器在出现问题时不要崩溃。

在节点中,。
要使它不被抛出,就让一个听者听它,然后自己处理它。这样,您就可以用更多信息记录错误

您还可以尝试使用有用的node.js选项
——在未捕获异常时中止。它不仅提供了更加详细和有用的错误堆栈跟踪,而且在应用程序崩溃时保存了核心文件,允许进一步调试

要为一组调用使用一个侦听器,您可以在运行时捕获其他错误。确保与http(服务器/客户端)相关的每个异步操作都位于不同的域上下文中。与代码的其他部分相比,域将自动侦听错误事件并将其传播到自己的处理程序。因此,您只需侦听该处理程序并获取错误数据。您还可以免费获得更多信息


另请参见此…

您可以使用
pm2
启动服务器。如果出现任何错误,您的服务器将不会崩溃。它将抛出错误并继续运行。它还提供了其他有用的功能


你可以在这里阅读更多关于pm2的信息

我应该在哪里听?在每一条路线中?你链接的页面似乎没有到达正确的位置,我在该页面上找不到它。你说得很对:在移动应用程序上,链接没有跟随锚,不知道为什么…:-(在我的桌面上,它们确实可以工作……对不起……谢谢,这基本上就是我需要知道的。我本来打算在我的生产环境中使用PM2,所以我想我应该准备好了。