IdleStateHandler 需要提供三个参数:
readerIdleTimeSeconds, 读超时. 即当在指定的事件间隔内没有从 Channel 读取到数据时, 会触发一个 READER_IDLE 的 IdleStateEvent 事件.
writerIdleTimeSeconds, 写超时. 即当在指定的事件间隔内没有数据写入到 Channel 时, 会触发一个 WRITER_IDLE 的 IdleStateEvent 事件.
allIdleTimeSeconds, 读/写超时. 即当在指定的事件间隔内没有读或写操作时, 会触发一个 ALL_IDLE 的 IdleStateEvent 事件.
获取客户端IP
(InetSocketAddress)
ctx.channel.remoteAddress
String clientIP = insocket.getAddress().getHostAddress();
原文:https://www.cnblogs.com/zeroone/p/8992370.html