IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> No buffer space available终极解决办法 -> 正文阅读

[大数据]No buffer space available终极解决办法

这是个标题党。

周一到公司打开电脑准备再测试下上周写完的接口

卧X,查询数据库报错了!

这两天程序乖乖的跑在服务器上,也没人动啊!

因为上次遇到过Druid连接池关闭链接报错的问题,首先怀疑是不是数据库连不上了?

因为调其他接口也不通,又怀疑是不是网络断了?

一看日志,无法建立链接,无论是查数据库还是调其他服务都是无法建立链接。可是为啥会出现这种情况呐?

Caused by: com.dareway.framework.exception.AppException: -1java.sql.SQLException: The Network Adapter could not establish the connection
	at com.dareway.framework.dbengine.dbmetadata.DBMetaDataUtil.getConnection(DBMetaDataUtil.java:20)
	at com.dareway.framework.dbengine.dbmetadata.dbrelation.OracleDBRelation.initDBRelation(OracleDBRelation.java:88)
	at com.dareway.framework.dbengine.dbmetadata.dbrelation.DBRelation.<init>(DBRelation.java:48)
	at com.dareway.framework.dbengine.dbmetadata.dbrelation.OracleDBRelation.<init>(OracleDBRelation.java:30)
	at com.dareway.framework.dbengine.dbmetadata.dbuser.OracleDBUser.getDBRelation(OracleDBUser.java:84)
	at com.dareway.framework.dbengine.dbmetadata.DDSMetaData.getRelationMd5FromCache(DDSMetaData.java:169)
	at com.dareway.framework.dbengine.datasource.DDS.getRelationMd5FromCache(DDS.java:243)
	at com.dareway.framework.dbengine.datasource.DDS.getPlan(DDS.java:199)
	at com.dareway.framework.dbengine.DE.query(DE.java:272)
	... 109 common frames omitted
Caused by: java.sql.SQLException: The Network Adapter could not establish the connection
	at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:412)
	at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
	at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
	at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
	at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at com.dareway.framework.dbengine.dbmetadata.DBMetaDataUtil.getConnection(DBMetaDataUtil.java:17)
	... 117 common frames omitted
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
	at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:359)
	at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:422)
	at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:672)
	at oracle.net.ns.NSProtocol.connect(NSProtocol.java:237)
	at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1042)
	at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:301)
	... 124 common frames omitted
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 oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:141)
	at oracle.net.nt.ConnOption.connect(ConnOption.java:123)
	at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:337)
	... 129 common frames omitted

看到最后一行???No buffer space available (maximum connections reached?): connect

·难倒达到最大连接数了?这台服务器虽然跑着4个服务,但是都是自己要用的,怎么会有这么多链接数呐?

通过netstat -ano命令,一看处于TIME_WAIT的链接数为0,但状态为ESTABLISHED状态的链接数是1940,且大多数都是同一个pid的,经过查询,确实是自己的一个服务产生的。

经过详细的排查,发现,那个服务运行后就会主动链接xxl-job,但是xxl_job所在的服务器的网络不通。

关闭这个模块就好了。

遇到这个问题,一般都是达到最大连接数了,那么此时就要排查下,究竟是什么地方建立了链接,是服务器最大连接数不够还是大量的链接被占用了

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-23 12:26:02  更:2021-11-23 12:28:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:04:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码