并发套接字客户端Java问题

时间:2018-10-03 21:55:02

标签: java sockets concurrency client tclientsocket

我有一个系统,每个TCP / IP套接字每分钟必须处理200多个事务。我目前正在为到达的每个事务创建一个新的套接字,得到答案后,我使用java.net.Socket的.close()API关闭套接字。我有两个问题:

  • 我与服务器的活动连接数量有限(20个)。
  • 执行.close()时,套接字处于TIME_WAIT状态,这使我无法使用该套接字。

应使用哪种方法?以下是其中的几种方法。

  • 使用不使用java.nio包锁定的套接字,发生的事情是从套接字中获得答案非常重要,而且据我所读,控制会丢失一点。

  • 创建每个请求的线程,并在完成时关闭(我仍然会遇到我提到的TIME_WAIT问题)。

  • 生成一个始终保持打开状态的Socket连接池,并检查每个连接的负载并决定使用哪个连接。

0 个答案:

没有答案