Netty心跳处理以及读写超时设置

教程大全  / 只看大图  / 倒序浏览   ©

#楼主# 2020-2-10

跳转到指定楼层

马上注册,分享更多源码,享用更多功能,让你轻松玩转云大陆。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

有时间因为网络设置为飞行模式服务器接收不到客户端断开连接标志,或者我们长时间没有操作,这些可能都会造成服务器资源的占用。我们需要让Netty能够定期检测某个通道是否空闲,如果空闲凌驾一定的时间,就可以将对应客户端的通道资源关闭。
纯后端检测机制
类似于设置一定时间Netty服务器没有活动了,没接收消息,没写数据,就向客户端发送一次变乱消息,看看客户端是否还存活

想要实现这个很简单

1.修改通道初始化器

2.添加变乱检测捕获类

ChannelInboundHandlerAdapter里的userEventTriggered方法可以监听Netty服务器的所有变乱

我们这里判断如果监听到的变乱属于我们定义的IdleStateEvent超时状态变乱,那么我们就对其做一定处理
我这里做的处理是如果凌驾一定变乱没有进行读和写,直接关闭通道.

[	DISCUZ_CODE_0	]

12秒后的读写超时变乱触发关闭通道

215511brwpypwy3ac339ar.png
分享淘帖
回复

使用道具

您的回复是对作者最大的奖励

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于作者

陈荣_2334

新手猿

  • 主题

    5

  • 帖子

    5

  • 关注者

    0

Archiver|手机版|小黑屋|云大陆 | 赣ICP备18008958号-4|网站地图
Powered by vrarz.com!  © 2019-2020版权所有云大陆