omnip620 / node-zookeeper-dubbo

A middleware helps node to communicate dubbo by using its default protocol, which is registered in zookeeper
300 stars 80 forks source link

单个socket发送数据失败时是否应该考虑重试? #101

Closed wunqiaoseven closed 5 years ago

wunqiaoseven commented 5 years ago

贴一下我的代码, 当某一长连接发送数据失败时,重新切换一个连接发起请求 sendData(el, num) { this.dispatcher.gain((err, conn) => { if (err) { return el.reject(err); } conn.invoke(el, (err, retry) => { err && !retry && el.reject(err); if (err && retry && num < 3) { num++; this.sendData(el, num); } this.dispatcher.release(conn); !conn.isConnect && this.dispatcher.purgeConn(conn); }); }); }