启动pomelo后ECONNRESET

RT~最近发现的一个很奇怪bug,有些服务器部署上去没问题,有些就会在启动后报ECONNRESET。完全一样的代码+环境(node v0.10.25, pomelo 0.8.7)

[2014-02-14 10:36:59.076] [INFO] pomelo-admin - [/root/sgpomelo_rebase/game-server/node_modules/pomelo/node_modules/pomelo-admin/lib/consoleService.js] try to connect master: "connector3", "127.0.0.1", 3005

[2014-02-14 10:36:59.286] [ERROR] console -  Caught exception: Error: read ECONNRESET
    at errnoException (net.js:901:11)
    at TCP.onread (net.js:556:19)

感觉像是master和servers之间的通信挂了。logs下面也没具体信息

标签:无
qklxtlx 在 2014-2-14 10:39发布
qklxtlx 在 2014-2-14 10:47重新编辑 分享到 weibo
5 回复
#1 {1} py8765 2014-2-14 15:52 回复

嗯,是运行了多久报错的

qklxtlx 2014-2-15 08:30 回复

运行之后立刻报错~

#2 {4} qklxtlx 2014-2-16 10:00 回复

用了longjohn打log:

[2014-02-16 09:59:01.500] [ERROR] console -  Caught exception: Error: read ECONNRESET
    at errnoException (net.js:901:11)
    at onread (net.js:556:19)
---------------------------------------------
    at fireErrorCallbacks (net.js:440:15)
    at Socket._destroy (net.js:472:3)
    at onread (net.js:556:10)

还是无解……求教-。-@py8765

py8765 2014-2-17 09:47 回复

如果是运行立即报错可能还是服务器配置问题

qklxtlx 2014-2-18 09:15 回复

@py8765 哪些因素是可能的呢?

因为我是放在阿里云服务器上的,在其他机子上也配置过,但有两台始终有问题。我保证了ubuntu\nodejs\pomelo版本一致+代码完全一致(配置里用的是127.0.0.1)

但是依然出现这个问题……很纠结

py8765 2014-2-18 09:55 回复

@qklxtlx 你是分布式部署还是都在单台机器下部署的

qklxtlx 2014-2-18 10:14 回复

@py8765 目前都是单机单机部署(master/servers.json里都是127.0.0.1)就挂了……

我最后是搞成分布式的,但是一开始先拿单机部署测试

#3 {2} qklxtlx 2014-2-22 12:32 回复

@py8765 问题解决了……4100端口被hbase当成HRegionServer(别人在那个服务器上装了一套hbase),然后一绑定就被试图连接,然后协议不一样怎么能在一起。。。

fantasyni 2014-2-22 12:36 回复

@qklxtlx 这个实现要 netstat 看看的啊

qklxtlx 2014-2-22 12:50 回复

@fantasyni netstat里看了,没有这个端口号对应的进程……

#4 joe001 2016-7-16 00:26 回复

在腾讯云主机上布署也出现一样问题,试过pomelo 1.x 2.0 node 0.11 6.x都一样
后来发现是和启用了腾讯云的负载均衡服务,如果关掉该端口的负载均衡服务,就不会报 read ECONNRESET

#5 joe001 2016-7-16 00:37 回复

netstat lost都查过,没有其它应用占用该 clientPort 端口
进一步发现,和负载均衡服务的健康检查设置有关

回到顶部