阿里云 java程序 链接redis 报错 : IO Error: Connection reset

简介:

阿里云 java程序 链接redis 报错 : IO Error: Connection reset

  • 报错内容
2018-03-07 17:33:41.224 ERROR [main][Worker.java:26] - catching
java.sql.SQLRecoverableException: IO Error: Connection reset
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:421) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:148) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:211) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:142) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1377) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1431) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:632) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:934) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:930) ~[druid-1.0.15.jar:1.0.15]
    at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:102) ~[druid-1.0.15.jar:1.0.15]
    at com.dragon.terminal.common.db.ConnectionPool.getConnection(ConnectionPool.java:71) ~[terminal-system-common-3.1.0.Final.jar:?]
    at com.dragon.terminal.worker.dao.DeviceStatusDao.getTotalCount(DeviceStatusDao.java:273) ~[terminal-system-worker-3.1.0.Final.jar:?]
    at com.dragon.terminal.worker.DeviceStatusInitializer.initialize(DeviceStatusInitializer.java:50) ~[terminal-system-worker-3.1.0.Final.jar:?]
    at com.dragon.terminal.worker.Worker.start(Worker.java:23) [terminal-system-worker-3.1.0.Final.jar:?]
    at com.dragon.terminal.server.TerminalServer30.main(TerminalServer30.java:19) [terminal-system-server-3.1.0.Final.jar:?]
Caused by: java.net.SocketException: Connection reset
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:115) ~[?:1.8.0_144]
    at java.net.SocketOutputStream.write(SocketOutputStream.java:155) ~[?:1.8.0_144]
    at oracle.net.ns.DataPacket.send(DataPacket.java:199) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.net.ns.NetOutputStream.flush(NetOutputStream.java:211) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:227) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:175) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:100) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:85) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:122) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:78) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1179) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CMAREngine.unmarshalSB1(T4CMAREngine.java:1155) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:279) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:359) ~[ojdbc6-11.2.0.jar:11.2.0.1.0]
    ... 18 more
原因
  • 响应慢,阿里云CentOS7 最小化安装 默认没安装嫡服务器
    启动java 程序 链接redis 时间过长,导致启动失败。解决方法如下:

解决方案

  • 安装rng-tools
# yum install rng-tools
# echo 'EXTRAOPTIONS="-i -o /dev/random -r /dev/urandom -t 10 -W 2048"' > /etc/sysconfig/rngd
# systemctl enable rngd.service
# systemctl restart  rngd.service
目录
相关文章
|
人工智能 监控 安全
智慧工地解决方案,java智慧工地程序代码
智慧工地系统融合物联网、AI、大数据等技术,实现对施工现场“人、机、料、法、环”的全面智能监控与管理,提升安全、效率与决策水平。
417 2
|
安全 Java
Java异常处理:程序世界的“交通规则
Java异常处理:程序世界的“交通规则
464 98
|
NoSQL 网络协议 Redis
解决:启动Redis报错
当 Redis 启动报错“Could not create *:6379”时,可能是端口占用或配置问题。解决方法:依次运行以下命令——先通过 `redis-cli.exe` 进入命令行并执行 `shutdown` 关闭服务,再用 `exit` 退出工具,最后通过 `redis-server.exe redis.windows.conf` 重启 Redis。此操作可有效释放端口并正常启动 Redis 服务。
2078 1
|
NoSQL Java 网络安全
SpringBoot启动时连接Redis报错:ERR This instance has cluster support disabled - 如何解决?
通过以上步骤一般可以解决由于配置不匹配造成的连接错误。在调试问题时,一定要确保服务端和客户端的Redis配置保持同步一致。这能够确保SpringBoot应用顺利连接到正确配置的Redis服务,无论是单机模式还是集群模式。
873 5
|
存储 Java 编译器
对比Java学习Go——程序结构与变量
本节对比了Java与Go语言的基础结构,包括“Hello, World!”程序、代码组织方式、入口函数定义、基本数据类型及变量声明方式。Java强调严格的面向对象结构,所有代码需置于类中,入口方法需严格符合`public static void main(String[] args)`格式;而Go语言结构更简洁,使用包和函数组织代码,入口函数为`func main()`。两种语言在变量声明、常量定义、类型系统等方面也存在显著差异,体现了各自的设计哲学。
450 0
|
Java C语言
课时8:Java程序基本概念(标识符与关键字)
课时8介绍Java程序中的标识符与关键字。标识符由字母、数字、下划线和美元符号组成,不能以数字开头且不能使用Java保留字。建议使用有意义的命名,如student_name、age。关键字是特殊标记,如蓝色字体所示。未使用的关键字有goto、const;特殊单词null、true、false不算关键字。JDK1.4后新增assert,JDK1.5后新增enum。
388 4
|
搜索推荐 Java Android开发
课时146:使用JDT开发Java程序
在 Eclipse 之中提供有 JDT环境可以实现java 程序的开发,下面就通过一些功能进行演示。 项目开发流程
584 0
|
存储 Java 数据库连接
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?