网络通讯异常

网络通讯异常

网络通讯异常
描述:
拒绝登录Manager或disql登录数据库,报错-6001(网络通讯异常)。
主要从以下几个方面进行排查:
1)数据库服务是否正常。

ps –ef|grep dms

2)防火墙是否允许数据库端口通过。

systemctl stop firewalld --临时关闭防火墙
systemctl disable firewalld --永久关闭防火墙开机自起
systemctl status firewalld --查看防火墙状态
firewall-cmd --state --查看防火墙状态
firewall-cmd --add-port=5236/tcp --临时添加5236端口白名单

3)dm.ini文件中MAX_SESSIONS参数值。
4)key并发限制。

select * from v$license;

5)查看dmserver连接数:netstat -anp|grep dmserver|wc -l
6)查看数据库日志中是否有Reached the max session limit(达到最大连接数限制)。
7)若内存吃紧,导致连接被拒绝,优化stack size值,修改为8192即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在这段代码中,需要手动关闭Socket的输入流、输出流和Socket本身,以释放相关资源。修改后的代码如下: ``` try { Socket client = new Socket(socketUrl, socketPort); client.setSoTimeout(socketTimeOut); OutputStream os = client.getOutputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream())); os.write(json.getBytes(StandardCharsets.UTF_8)); StringBuilder stringBuilder = new StringBuilder(); String dataResult = ""; while ((dataResult = br.readLine()) != null) { stringBuilder.append(dataResult); } log.info("【服务端返回的数据】receive={}",JsonFormatUtil.GsonFormatToString(stringBuilder.toString())); String returnData = stringBuilder.toString(); returnData = returnData.substring(24, returnData.length()); // 关闭输入流、输出流和Socket br.close(); os.close(); client.close(); return returnData; } catch (IOException e) { log.error("sendSocket error e={}",e.getMessage()); throw new RuntimeException("网络通讯异常,请稍后再试"); } ``` 在try块中使用了Socket、OutputStream和BufferedReader对象,需要在finally块中关闭这些对象。为了确保这些对象都能被关闭,在finally块中使用try-catch语句关闭它们。修改后的代码如下: ``` Socket client = null; OutputStream os = null; BufferedReader br = null; try { client = new Socket(socketUrl, socketPort); client.setSoTimeout(socketTimeOut); os = client.getOutputStream(); br = new BufferedReader(new InputStreamReader(client.getInputStream())); os.write(json.getBytes(StandardCharsets.UTF_8)); StringBuilder stringBuilder = new StringBuilder(); String dataResult = ""; while ((dataResult = br.readLine()) != null) { stringBuilder.append(dataResult); } log.info("【服务端返回的数据】receive={}",JsonFormatUtil.GsonFormatToString(stringBuilder.toString())); String returnData = stringBuilder.toString(); returnData = returnData.substring(24, returnData.length()); return returnData; } catch (IOException e) { log.error("sendSocket error e={}",e.getMessage()); throw new RuntimeException("网络通讯异常,请稍后再试"); } finally { try { if (br != null) { br.close(); } if (os != null) { os.close(); } if (client != null) { client.close(); } } catch (IOException e) { log.error("close socket error e={}", e.getMessage()); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值