我正在使用专有工具从软件提供商处下载软件。在后端,它是一个java应用程序,它使用普通的http(或可选的https)来检索软件。
最近,下载失败了。请注意,我无法访问下载工具的源代码,而且我无法访问代理服务器。在开始实际下载之前,该工具会多次连接到同一主机。这些联系通常是成功的,虽然它们看起来有些慢(当然这是主观的)。
该工具执行一些日志记录,当它失败时,我们会遇到以下异常:
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at sun.net.www.MeteredStream.read(MeteredStream.java:116)
at java.io.FilterInputStream.read(FilterInputStream.java:116)
at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(HttpURLConnection.java:2676)
当通过wireshark收听时,我看到了一些奇特的行为(或者至少是我未经训练的眼睛所特有的)。 下载将“正常”进行一段时间,直到发生这种情况:
一些额外的信息:
1)我还可以访问不在我们网络上的亚马逊服务器,它可以毫不费力地执行下载。我们已经要求不同网络上的至少2个人尝试下载,并且它可以完美运行。
2)我们使用相同的服务器和代理连接到其他http / https网站,没有任何问题,这包括不时的大量下载
答案 0 :(得分:0)
这是通过调整代理服务器上的一些超时设置来解决的,尽管他们没有给我们很多反馈,关于究竟是什么改变了,或者为什么只有这个特定网站受到影响。