SpringBoot整合Redis:java.io.IOException: 远程主机强迫关闭了一个现有的连接。或者控制台报连接超时异常
场景:
项目启动过后 Redis 连接过一会就会断开,报如下问题:
问题1:
2022-12-05 23:05:18.287 ERROR 10752 --- [sson-netty-1-11] o.redisson.client.handler.CommandsQueue :139 - Exception occured. Channel: [id: 0x7b1e0211, L:/xxx:60851 - R:/xxx:6379]java.io.IOException: 远程主机强迫关闭了一个现有的连接。at java.base/sun.nio.ch.SocketDispatcher.read0(Native Method)at java.base/sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)at java.base/sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:276)at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:233)at java.base/sun.nio.ch.IOUtil.read(IOUtil.java:223)at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:358)at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:253)at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132)at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:350)at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151)at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)at java.base/java.lang.Thread.run(Thread.java:834)
问题2:
Redis server response timeout (3000 ms) occured for command: (EVAL) with params: [if (redis.call('exists', KEYS[1]) == 0) then redis.call('publish', KEYS[2], ARGV[1]); return 1; end;..., 2, a:TestParamDtoOne(id=null, code=, userName=, email=), redisson_lock__channel:{a:TestParamDtoOne(id=null, code=, userName=, email=)}, 0, 30000, 033aee3e-7de4-415f-b627-69b3d7e17566:119] channel: [id: 0x9700eaf4, L:/xxx:60842 - R:/xxx:6379]
问题3:
nested exception is io.lettuce.core.RedisCommandTimeoutException: Command timed out
一、解决
1、设置连接空闲超过 N(秒或毫秒)后关闭,0为禁用:redis.timeout: 60s(这里设置和tcp-keepalive的值一致)
2、设置 redis 服务端的配置文件 redis.conf 中 tcp-keepalive 的时间为60(单位秒)(TCP连接存活时间):tcp-keepalive 60
二、总结注意项
1、tcp-keepalive 超时时间默认是300,应该把这个存活时间改成小于或等于超时时间 redis.timeout
2、如果 tcp-keepalive 存活时间大于超时时间,存活时间还没有结束(连接还没关闭)就又创建新的连接,创建的连接多了就会远程主机强迫关闭现有连接
SpringBoot整合Redis:java.io.IOException: 远程主机强迫关闭了一个现有的连接。或者控制台报连接超时异常相关推荐
- 关于Redis出现“java.io.IOException: 远程主机强迫关闭了一个现有的连接”的一次排查
背景 最近在使用springboot(Windows下)连接redis(云服务器)开发时发现一些问题:连接成功的情况下,在一段时间未交互数据后,再次通过连接与Redis传输数据回出现异常java.io ...
- java.io.IOException: 远程主机强迫关闭了一个现有的连接。
参考文档: (2条消息) 解决redis中java.io.IOException: 远程主机强迫关闭了一个现有的连接_zeal9s的博客-CSDN博客_redis远程主机强迫关闭了一个现有连接怎么解决 ...
- java.io.IOException: 远程主机强迫关闭了一个现有的连接
摆脱烦恼最有效的是慢思考,为什么和我想的不一样,出入在哪里,什么导致的? 疑惑 我使用netty框架接受数据,每隔半个小时存储数据,运行不到三个小时报错 java.io.IOException: 远程 ...
- java强制关闭远程桌面_elasticsearch中的java.io.IOException: 远程主机强迫关闭了一个现有的连接...
[2018-07-31T14:29:41,289][WARN ][o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [9rTGh-y] caught exc ...
- java nio 强制关闭_Java NIO服务器:远程主机强迫关闭了一个现有的连接
Java NIO聊天室 中,若客户端强制关闭,服务器会报"java.io.IOException: 远程主机强迫关闭了一个现有的连接.",并且服务器会在报错后停止运行,错误的意思就 ...
- 远程计算机强迫关闭一个连接,远程主机强迫关闭了一个现有的连接。
org.apache.catalina.connector.ClientAbortException: java.io.IOException: 远程主机强迫关闭了一个现有的连接. at org.ap ...
- es远程主机强迫关闭了一个现有的连接
Caused by: java.io.IOException: 远程主机强迫关闭了一个现有的连接. at sun.nio.ch.SocketDispatcher.read0(Native Me ...
- netty 远程主机强迫关闭了一个现有的连接。
如果你的netty报这个错误 java.io.IOException: 远程主机强迫关闭了一个现有的连接. 或者 System.Net.Sockets.SocketException (0x80004 ...
- 循环报错: 远程主机强迫关闭了一个现有的连接
客户端终止后,服务端一直循环 报java.io.IOException: 远程主机强迫关闭了一个现有的连接. 原始代码 private void read(SocketChannel channel, ...
最新文章
- java哈希_Java Hashtable 类
- CFileFind 遍历目录与子目录
- error: undefined reference to 'cv::_OutputArray::_OutputArray(std::__ndk1
- matlab多项式加法运算,matlab多项式运算与代数方程求解解析.ppt
- 风控人最容易被误解的一个风险管理板块
- 学习自媒体究竟要投入多少?
- 按头安利 好看又实用的建筑图标素材看这里
- java写入到excel表格乱码怎么办,数据库导出excel表格是乱码-java导出excel表格乱码!...
- 如何解决Mac电脑中的“AppStore无法下载软件”问题?
- QQ邮箱的POP3与SMTP服务器是什么?
- 学习WPF之解决方案和项目结构
- 没有 XXX 的手册页条目
- Luogu P2129 小Z的情书
- 【跨境电商】5个最佳WordPress插件推荐
- Pygame 官方文档 - pygame.cursors
- 概率论与数理统计_数理统计部分
- 完美的扎克伯格,倒霉的Facebook
- 世界电信和信息社会日 | TcaplusDB君节日介绍
- mysql line separator_java输出换行的标准姿势line.separator
- 修改DIV滚动条样式