当前位置: 首页 > 面试题库 >

java.net.SocketException:连接重置

谷翰飞
2023-03-14
问题内容

我在尝试从套接字读取时遇到以下错误。我正在执行readInt()该操作InputStream,并且出现此错误。仔细阅读文档,这表明连接的客户端部分关闭了连接。在这种情况下,我是服务器。

我可以访问客户端日志文件,但它没有关闭连接,实际上它的日志文件表明我正在关闭连接。有人知道为什么会这样吗?还有什么要检查的?当有本地资源可能达到阈值时,会出现这种情况吗?

我确实注意到我有以下几行:

socket.setSoTimeout(10000);

就在readInt()。这是有原因的(长话短说),但出于好奇,在某些情况下这可能会导致指示的错误?我的服务器在IDE中运行,我碰巧将IDE卡在断点上,然后我发现完全相同的错误开始出现在我自己的IDE日志中。


问题答案:

有几种可能的原因。

  1. 另一端故意重设了连接,在此我将不做记录。应用程序软件很少会这样做,而且通常是不正确的,但对于商业软件而言,这并不是未知的。
  2. 更常见的是,由于写入连接而导致另一端已经正常关闭。换句话说,应用程序协议错误。
  3. 当套接字接收缓冲区中有未读数据时,关闭套接字也会导致此错误。
  4. 在Windows中,“软件引起的连接中止”与“连接重置”不同,这是由您端发送的网络问题引起的。有关于此的Microsoft知识库文章。


 类似资料:
  • 问题内容: 我已经搜索了解决方案,但没有找到解决方案,但我总是遇到此错误 codigo: 错误: 问题答案: 从下载ChromeDriver http://chromedriver.storage.googleapis.com/index.html?path=2.33/ 此ChromeDriver可以与您的Google Chrome版本一起使用。

  • 问题内容: Netbeans IDE中的Java,Hibernate,MySQL项目中出现异常。 我做了一些挖掘工作,以尝试修复此奇怪的Socket异常,但无济于事。 一些论坛解决方案建议为Hibernate实现c3p0连接池。没有修复。 其他人建议禁用AV和防火墙(!!),因为它们可能会干扰套接字连接。没有修复。 我已经用Hibernate标记了这个问题,因为我不确定是休眠的原因,但是异常发生在

  • 我们有一个复制设置,其中主节点,辅助节点和仲裁节点运行mongodb社区服务器v3.4.16。 我们正在使用jasperserver从mongoDB数据库生成100个报告。 最近,我们在连接到mongodb服务器时开始面临连接重置问题,因为报告会随机失败。 应用程序(jasperserver)和mongodb在同一个网络中,它们之间没有防火墙。 有人能提供任何指导来进一步调查根本原因,以便解决问题

  • 问题内容: 我们在日志中看到频繁但间歇的 错误。我们不确定错误的真正来源以及调试方法。 该问题似乎与我们尝试发送的消息无关。请注意,该消息不是 。 关于此异常的典型原因是什么以及如何进行的任何建议? 这是一个代表性的堆栈跟踪(是我们的组件): 我们的组件是一个在Tomcat下运行的Web应用程序,该应用程序调用发送SMS消息的第三方Web服务,这种情况经常发生。引发异常的代码行是下面的代码片段的最

  • 问题内容: 我正在创建一个(行为良好的)网络蜘蛛,并且我注意到一些服务器导致Apache HttpClient给我一个SocketException-具体来说: 导致此的代码是: 对于大多数服务器来说,这很好。但是对于其他人,它立即引发SocketException。 导致立即发生SocketException的站点示例:http ://www.bhphotovideo.com/ 效果很好(与大多

  • 我还尝试提供私有IP和端口4444,运行脚本后,服务器代理立即关闭,并且收到错误java.net.socketException:Connection reset by Peer:socket write error。 > JMeter控制台日志 我做了telnet privateip:4444,并通过了test命令。服务器代理返回yep数据。此设置正在本地框上工作。不在AWS盒子上。 请让我知道