netstat 有很多连接处于established

1、今天发现与一个对端系统的数据库连不上。
netstat 有很多连接处于established_第1张图片
----------------------------------------------------------------------------------------
在70主机上netstat -n | awk '/^tcp/' | grep 134.96.240.118发现正常
netstat 有很多连接处于established_第2张图片
在71主机上同样执行netstat -n | awk '/^tcp/' | grep 134.96.240.118发现异常
netstat 有很多连接处于established_第3张图片
即有很多连接存在。一共有102条。
看了下c3p0的配置,数据库的连接最大限制数是100条。------102条的原因应该是71上运行了两个weblogic节点,所以应该是100+2。说明了其中一个节点的数据库连接一直没有释放。
netstat 有很多连接处于established_第4张图片

------------------------------------------------------------------------------------
其实我应该已经知道为什么会有那么多连接。
private BankBlanceMapper getBankBalanceMapper() {
return sqlSessionFactory_bank.openSession().getMapper(BankBlanceMapper.class);
}
在ibatis中获取session的时候没有断开session.close();
----------------------------------------------------------------------------------
紧急解决方法:
重启这个节点
netstat 有很多连接处于established_第5张图片
发现,从established状态切换到了Fin_WAIT1这个就可以联想到tcpip连接的时候,
当处于established状态的client,发送fin到server,自己就处于fin_wait1状态了。
---------------------------------------------------------------------------------
很纳闷在c3p0里设置了maxidle理论上时间久了,会自动断开的。


本文转载自:新浪博客:netstat 有很多连接处于established

你可能感兴趣的:(linux,linux)