I / O错误:SOCKET错误

时间:2011-03-17 05:07:19

标签: java sockets java-ee

我们在JBOSS 4.0.2服务器上部署了J2EE Web应用程序。从最近几天应用程序突然停止。 我们在日志中遇到以下错误。

  

java.net.SocketException:软件   导致连接中止:recv失败

由于上面的套接字错误,应用程序无法连接数据库。 重启jboss应用程序也无济于事。要解决套接字错误,我们必须重新启动生产机器。 重新启动生产机器后,它可以正常工作。

上面的套接字错误可能是什么原因?

1 个答案:

答案 0 :(得分:0)

该错误实质上意味着某人试图从封闭的套接字读取或写入(它的Windows代表“连接重置”)。虽然有很多原因可以发生,但是不可能确切地说出你的应用程序为什么会这样做。您可能会尝试检查的一些事项:

  • 如果你有多个线程读写同一个套接字,请确保其中一个没有关闭它
  • 尝试关闭Nagle's algorithm;我已经看到这个错误发生了,因为有人在操作系统完成写入之前关闭了套接字(你可以用setTcpNoDelay执行此操作)