现场在报错时间,有大量的 Oracle请求超时,并主动断开与SERVER的连接。
Oracle错误WARNING: inbound connection timed out (ORA-3136)。
分析结果如下:
执行自动任务调度的功能,在执行存储过程时,会新建一个连接,连接ORACLE服务器,客户端要生成随机密钥用于客户端认证,JDK默认使用/dev/random,random采用阻塞方式生成随机数,生成的速度很慢,ORACLE服务器会主动reset,并在alert.log中报错。
报错时间:
Tue Jun 30 16:32:13 CST 2020
Tue Jun 30 16:35:13 CST 2020
Tue Jun 30 16:38:13 CST 2020
Wed Jul 01 18:18:37 CST 2020
Wed Jul 01 18:21:37 CST 2020
Wed Jul 01 18:24:37 CST 2020
Wed Jul 01 18:27:38 CST 2020
Wed Jul 01 18:30:38 CST 2020
Wed Jul 01 18:33:38 CST 2020
Wed Jul 01 18:36:38 CST 2020
报错内容 :
funcCode="02700040" 自动任务调用
failinfo="java.sql.SQLRecoverableException: IO 错误: Connection reset
解决方案:
JRE运行变量,securerandom.source=file:/dev/urandom,路径:\jdk_1.8.0_192\jre\lib\security\java.security。