ɢʜʘ*_*ɔʘɴ 6 mysql exception-handling node.js
我正在使用NodeJS,Express,mysql编写应用程序,到目前为止一切正常,但是当我运行我的应用程序之后,当mysql连接中断时,我的应用程序通过此异常并且我的应用程序关闭.
Error: read ECONNRESET
at errnoException (net.js:901:11)
at TCP.onread (net.js:556:19)
Run Code Online (Sandbox Code Playgroud)
从另一个堆栈问题我知道我必须处理这样的未被捕获的异常.
process.on('uncaughtException', function(err) {
console.log('Caught exception: ' + err);
console.log(err.stack);
});
Run Code Online (Sandbox Code Playgroud)
在此之后,我的应用程序不会退出,而是它挂起,所以我的问题是如何处理此异常,以便即使在此异常后我的应用程序没有挂断,mysql连接也可以.
我找到了解决方案,如果其他人也面临同样的问题,我会发布该解决方案,这也可能对你们有所帮助。
首先我捕获了所有未捕获的异常,这使得我的应用程序不会异常退出。
其次,我遇到的挂起问题是因为当服务器关闭连接时,我请求的所有查询都会失败,我的服务器只会挂起我猜它的节点mysql错误,但我使用连接池解决了它,如果服务器关闭,则在池中大约一秒钟后重新获得连接,所以我的问题就这样解决了。
| 归档时间: |
|
| 查看次数: |
5182 次 |
| 最近记录: |