mysql econnreset_节点js ECONNRESET

节点js ECONNRESET

我正在使用Socket.IO运行一个Express js应用程序进行聊天,并在24小时内随机获得以下错误5次。节点进程将永远包装,并立即重新启动。

问题是重新启动特快会把我的用户赶出他们的房间,而没有人想那样做。

Web服务器由HAProxy代理。不存在套接字稳定性问题,只需使用WebSocket和闪存套接字传输。我不能故意复制这个。

这是节点v0.10.11的错误:events.js:72

throw er; // Unhandled 'error' event

^Error: read ECONNRESET     //alternatively it s a 'write'

at errnoException (net.js:900:11)

at TCP.onread (net.js:555:19)error: Forever detected script exited with code: 8error: Forever restarting script for 2 time

同时添加了Socket.IO客户端错误处理程序和未处理异常处理程序。似乎这个人捕捉到了错误:process.on('uncaughtException', function (err) {

console.error(err.stack);

console.log("Node NOT Exiting...");});

因此,我怀疑这不是Socket.IO问题,而是我对另一个服务器的http请求,或者MySQL/redis连接。问题是错误堆栈不能帮助我识别我的代码问题。下面是日志输出:Error: read ECONNRESET

at errnoException (net.js:900:11)

at TCP.onread (net.js:555:19)

我怎么知道是什么原因造成的?如何从错误中获得更多信息?

好的,不是很详细,但是下面是带有“Longjohn”的堆栈跟踪:Exception caught: Error ECONNRESET{ [Error: read ECONNRESET]

code: 'ECONNRESET',

errno: 'ECONNRESET',

syscall: 'read',

__cached_trace__:

[ { receiver: [Object],

fun: [Function: errnoException],

pos: 22930 },

{ receiver: [Object], fun: [Function: onread], pos: 14545 },

{},

{ receiver: [Object],

fun: [Function: fireErrorCallbacks],

pos: 11672 },

{ receiver: [Object], fun: [Function], pos: 12329 },

{ receiver: [Object], fun: [Function: onread], pos: 14536 } ],

__previous__:

{ [Error]

id: 1061835,

location: 'fireErrorCallbacks (net.js:439)',

__location__: 'process.nextTick',

__previous__: null,

__trace_count__: 1,

__cached_trace__: [ [Object], [Object], [Object] ] } }

这是原因吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值