Java Socket快速重新连接

时间:2015-05-13 18:25:47

标签: java performance sockets connect reset

我面临套接字的一个小问题。

此方法大约需要100毫秒甚至更多,具体取决于服务器。 socket.connect(目标);

然后我通过DataInput / Output流与软件进行通信,因此存在查询阶段,握手阶段,登录请求阶段等。

有没有什么方法可以从握手阶段“重置”数据流,这样服务器就会忘记所有内容,而套接字将再次处于第一阶段而不执行socket.connect(dest);再次?

感谢。

2 个答案:

答案 0 :(得分:3)

这完全取决于协议,它本身与套接字无关。

答案 1 :(得分:0)

没有什么可以阻止你通过套接字来回传递尽可能多的消息;除非您的协议(或缺少明确定义的协议),否则它不会指示消息的开始/结束位置。

使用DataInput / OutputStream时,您只需定义一个包含任何数据的Message类,并且双方只会在无限循环中运行,读取Message,处理并可能生成响应消息。