netty
forcht
这个作者很懒,什么都没留下…
展开
-
记一次netty--channelInactive踩到的坑
昨天项目修改点代码,重新部署后channelInactive一直被触发,一直打印 “如果connectionInfo为空的处理方式”。 设备断开连接后connectionInfo不应该为空的。而且断开连接事件发生这么频繁。 最后上去抓包查看下,发现很多未知IP地址的终端一直请求服务器建立TCP连接。建立后一段时间又断开了,该事件就是这么被触发的。 最后只处理正常设备的断开连接事件。(网络环...原创 2018-08-10 13:06:12 · 40429 阅读 · 2 评论 -
netty笔记(1)--ctx.write()和channel().write()的区别
刚学netty,一些细节上还不是很清楚,发现踩了很多坑。一点一点记录下来。 先看一个小demobootstrap.group(bossGroup,workerGroup) .channel(NioServerSocketChannel.class) .localAddress(new InetSocket...原创 2018-08-10 15:14:39 · 7853 阅读 · 0 评论 -
netty笔记(2)--ctx.writeAndFlush()方法
刚开始对这个方法不是很清楚,执行ctx.writeAndFlush()方法时,是写完后立即执行flush,还是同样会将写事件传给下一个handelr。等执行完所有的handler的write方法后再flush()。 接着跟着源码走一遍。第一步@Override protected void channelRead0(ChannelHandlerContext ctx, ByteBu...原创 2018-08-13 10:16:12 · 11583 阅读 · 0 评论 -
netty笔记(3)--netty服务的启动过程
遇到问题时,有时需要带着疑惑分析下源码才能更好的解决问题。 记录下分析netty启动的过程。 启动代码public void start() throws InterruptedException { final EchoServerInHandler inHandler = new EchoServerInHandler(); final EchoServ...原创 2018-08-13 13:55:56 · 245 阅读 · 0 评论 -
记一次netty--IdleStateHandler踩到的坑
公司一个项目使用netty框架来搭建。有个场景需要用到IdleStateHandler来检查客户端如果一段时间没有发送数据则主动断开连接。 查看IdleStateHandler的构造器,三个参数分别表示 public IdleStateHandler(boolean observeOutput, long readerIdleTime, long writerIdle...原创 2018-08-08 17:54:46 · 11392 阅读 · 1 评论