tomcat和oracle无法建立链接

tomcat和oracle无法建立链接

   小樱     2021年4月2日 09:51     1358    

描述现象

在浏览网站的时候点击按钮之后无法正常显示内容,一直在加载中。并且使用f12查看console的时候,返回了400错误,提示找不到对象。于是查看后端服务,tomcat的日志报出了The Network Adapter could not establish the connection。后边详查日志提示和oracle数据库无法正常建立链接。

解决思路

这种问题有很多原因

1.        从应用上讲,查看配置文件中关于数据库的配置是否被更改了,用户名、密码、数据库实例等相关信息。

2.       从数据库上讲,查看是否是监听出现了问题,或者数据库实例是不是出现某些问题。

3.       从系统上讲,查看是否是端口被禁用,或者防火墙阻止了端口。

4.       从网络上讲,查看是不是由于连接数的问题导致了,无法建立新的连接问题。

问题解决

我这里出现这个问题,是因为网络方面的问题,系统是windows server 2008,通过命令netstat -an | more发现大量的TIME_WAIT。由于大量的TIME_WAIT导致了无法正常的建立链接数。

这里修改了两个内容

1.        首先查看windows的动态端口的范围,通过命令netsh int ipv4 show dynamicportrange tcp

C:UsersLenovo>netsh int ipv4 show dynamicportrange tcp 协议 tcp 动态端口范围 启动端口 : 49152 端口数 : 16384

默认是从4915265536,16384个端口,为了避免TIME_WAIT过多把端口资源占用完,可以调整可用端口的范围

netsh int ipv4 set dynamicport tcp start=30000 num=35536

意思就是放开从3000065536端口的使用。num计算清楚需要使用多少个端口,这里num只能小于35536


2.调整TIME_WAIT延迟时间

在注册表(regedit)的HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters上添加一个DWORD类型的值TcpTimedWaitDelay,值就是秒数,一般设置为30秒即可。这里需要重启操作系统。

 


文章评论

0

其他文章