java.net.SocketException: No buffer space available (maximum connections reached?): connect

这篇具有很好参考价值的文章主要介绍了java.net.SocketException: No buffer space available (maximum connections reached?): connect。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        最近,有项目反馈调用第三方接口失败,查不到数据。现场用soapUI工具试了下,点执行按钮,一闪而过,接口没有任何返回值。一开始以为是第三方服务问题,后来查看日志,发现是自己的问题,报错如下:

Caused by: java.net.SocketException: No buffer space available (maximum connections reached?): connect
	at java.net.DualStackPlainSocketImpl.connect0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
	at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
	at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
	at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
	at java.net.PlainSocketImpl.connect(Unknown Source)
	at java.net.SocksSocketImpl.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at sun.net.NetworkClient.doConnect(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.<init>(Unknown Source)
	at sun.net.www.http.HttpClient.New(Unknown Source)
	at sun.net.www.http.HttpClient.New(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
	at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setupWrappedStream(URLConnectionHTTPConduit.java:274)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1343)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1304)
	at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:307)
	at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)
	at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1356)
	... 116 common frames omitted

        Caused by: java.net.SocketException: No buffer space available (maximum connections reached?): connect,看样子是连接数太多,耗尽了某种资源。

        执行命令:netstat -ano (windows下查看当前所有的连接),发现大量的TCP连接,如图:

java.net.SocketException: No buffer space available (maximum connections reached?): connect,java,http请求,java,后端,tcp/ip

         打开任务管理器,查看PID为60204的进程,发现是个Java进程,如图:

java.net.SocketException: No buffer space available (maximum connections reached?): connect,java,http请求,java,后端,tcp/ip

        然后,逐一排查,发现有个Java应用,由于配置的xxljob服务地址不正确,连接失败又不断重试,如图:

java.net.SocketException: No buffer space available (maximum connections reached?): connect,java,http请求,java,后端,tcp/ip

         上述问题导致TCP连接过多,资源耗尽,其他Java应用无法建立TCP连接,接口调用自然报错。找到问题了,关掉有问题的Java应用,配置正确的xxljob服务地址,重启,问题解决。

 文章来源地址https://www.toymoban.com/news/detail-591492.html

 

到了这里,关于java.net.SocketException: No buffer space available (maximum connections reached?): connect的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在使用socket进行通信连接时出现java.net.SocketException: Connection reset的解决方案

    在创建客户端和服务端后,出现java.net.SocketException: Connection reset的错误。 导致的原因 客户端或者服务端其中一端还在传输数据的途中,另外一端的socket被关闭(或者主动0关闭,或者运行异常退出导致的关闭),这时,客户端的第一个数据包传输过来后就会引发该异常。 一端

    2024年02月09日
    浏览(48)
  • java.net.ConnectException: Connection refused: no further information

    报错如下: 经上网查找资料,都说是防火墙,部分组件没有启动的问题。。。。。。。。。。。。 最后经过我一点一点代码的解析试错,最后发现是因为我redis没有配置,嗯。。。。。。。。。 我导入了redis的依赖,也调用了redis的方法,但是却没有在配置文件里进行redis的

    2024年02月15日
    浏览(49)
  • java.net.ConnectException: Connection refused: no further information【已解决】

     报错如下: 原因 :端口不一致,客户端无法访问服务端 解决方法 :把客户端的端口改成服务端一致的端口 ok,大功告成 。 8020端口: 8020端口在Hadoop1.x中默认承担着Namenode 和 Datanode之间的心跳通信,也兼顾FileSystem默认的端口号(Hdfs客户端访问Hdfs集群的RPC通信端口), 但是在

    2024年02月16日
    浏览(45)
  • java.net.SocketException: Broken pipe原因

    服务端日志中发现 若干条异常 在抛出上述异常时可能还有 Connect reset by peer 异常, 在客户端和服务端建立socket连接后,一方突然掉线/关闭通道,一方还在持续读取或者写入数据就会触发这个异常。触发 Connect reset by peer 后继续写入/读取数据则会抛出 Broken pipe 异常 这个异常简

    2024年02月12日
    浏览(89)
  • Elasticsearch health check failed java.net.ConnectException: Connection refused: no further informat

    这个错误信息表示Java程序尝试连接到Elasticsearch服务进行健康检查时失败了,具体原因是网络连接被拒绝,没有获取到进一步的信息。\\\"Connection refused: no further information\\\"通常意味着目标Elasticsearch服务可能没有运行、未监听请求的端口或者防火墙阻止了连接。 解决这个问题,请

    2024年04月13日
    浏览(41)
  • 项目启动 zookeeper 报错 java.net.ConnectException: Connection refused: no further information 解决问题思路分析

    项目启动不停的刷 java.net.ConnectException: Connection refused: no further information 链接被拒绝如下: 开始排查问题: 1.首先查看代码是不是有人提交了本地配置到仓库,导致自己配置文件无法读取到自己本地的配置文件,导致链接超时,链接不上zookeeper的服务 本地配置文件读取的还是本地的

    2024年02月16日
    浏览(45)
  • rabbitmq模块启动报java.net.SocketException: socket closed的解决方法

    问题 最近在接手一个项目时,使用的是spring-cloud微服务构架,mq消息消费模块是单独一个模块,但启动这个模块一直报如下错误: 这个错误是这个模块注册不到nacos报的错,刚开始就是检查模块的nacos配置和rabbitmq的配置,都没发现问题!后面详情看错误时发现还有这么一个警

    2024年02月16日
    浏览(47)
  • Unable to open debugger port (127.0.0.1:13928):java.net.SocketException “

    Unable to open debugger port (127.0.0.1:13928):java.net.SocketException “Interrupted function call: accept failed” 一、问题描述 准备debug启动项目时,报标题错误。 二、原因分析 出现这个报错的原因是因为端口被占用导致的。 三、解决办法 解决方法:关闭占用端口的进程。 第一步:cmd打开命令行窗

    2024年02月03日
    浏览(50)
  • Gradle: javax.net.ssl.SSLException: No PSK available. Unable to resume.

    今天在使用 gradle 构建项目过程中, 发现一个 ssl 问题: JDK 11中存在一个错误:https://bugs.openjdk.java.net/browse/JDK-8213202 可通过如下方式解决/避免: 等待JDK 12发布 更新到JDK 11.0.3+,其中包括backport(向后移植) 使用此命令行参数作为解决方法:-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 建

    2024年02月07日
    浏览(50)
  • Gradle编译时报错 Caused by: javax.net.ssl.SSLException: No PSK available. Unable to resume.

    Gradle编译时报错 Caused by: javax.net.ssl.SSLException: No PSK available. Unable to resume. 这是 JDK 11 的一个bug, 升级到 JDK 11.0.3+ 可以解决 bug: https://bugs.openjdk.java.net/browse/JDK-8213202 不想升级的话可以手动修改 $JAVA_HOME/conf/security/java.security 文件, 找到 jdk.tls.disabledAlgorithms=SSLv3 所在的那一行,在行

    2024年02月12日
    浏览(96)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包