Java 当服务器在调用hessian时出现问题(可能是套接字重置),Release client将永远挂起

Java 当服务器在调用hessian时出现问题(可能是套接字重置),Release client将永远挂起,java,networking,release,freeze,hessian,Java,Networking,Release,Freeze,Hessian,我有一个客户端通过Hessian调用服务器。在此期间,服务器不稳定,通常会出现套接字重置错误。客户端挂起在下面的日志中。那么,我如何才能在发布此日志的同时保持应用程序的运行呢。是什么原因让客户永远挂断?谢谢 位于java.net.SocketInputStream.socketRead0(本机方法) 位于java.net.SocketInputStream.read(未知源) 位于java.io.BufferedInputStream.fill(未知源) 位于java.io.BufferedIn

我有一个客户端通过Hessian调用服务器。在此期间,服务器不稳定,通常会出现套接字重置错误。客户端挂起在下面的日志中。那么,我如何才能在发布此日志的同时保持应用程序的运行呢。是什么原因让客户永远挂断?谢谢

位于java.net.SocketInputStream.socketRead0(本机方法) 位于java.net.SocketInputStream.read(未知源) 位于java.io.BufferedInputStream.fill(未知源) 位于java.io.BufferedInputStream.read1(未知源) 位于java.io.BufferedInputStream.read(未知源) -锁定(java.io.BufferedInputStream) 位于sun.net.www.http.HttpClient.parseHTTPHeader(未知源) 位于sun.net.www.http.HttpClient.parseHTTP(未知源) 位于sun.net.www.http.HttpClient.parseHTTPHeader(未知源) 位于sun.net.www.http.HttpClient.parseHTTP(未知源) 位于sun.net.www.protocol.http.HttpURLConnection.getInputStream(未知源)


默认情况下,HttpUrlConnection没有超时。 您需要为此设置java系统属性:

从命令行设置它:

-Dsun.net.client.defaultReadTimeout=30000 -Dsun.net.client.defaultConnectTimeout=30000
或来自Java代码:

System.setProperty("sun.net.client.defaultReadTimeout", "30000");
System.setProperty("sun.net.client.defaultConnectTimeout", "30000");

Hessian的哪个实现?我想那是春天|你确定网络工作正常吗?可能是网络可靠性的问题。网络看起来很好。但我不确定。为什么客户端永远被阻止?然而,客户端应用程序中的另一个线程在此之后仍然能够正常连接到该服务器。
System.setProperty("sun.net.client.defaultReadTimeout", "30000");
System.setProperty("sun.net.client.defaultConnectTimeout", "30000");