duan2

导航

 

2018年4月23日

摘要: 今天研究的是,心跳和重连,虽然这次是大神写的代码,但是万变不离其宗,我们先回顾一下Netty应用心跳和重连的整个过程: 1)客户端连接服务端 2)在客户端的的ChannelPipeline中加入一个比较特殊的IdleStateHandler,设置一下客户端的写空闲时间,例如5s 3)当客户端的所有C 阅读全文
posted @ 2018-04-23 15:43 duan2 阅读(2198) 评论(0) 推荐(0)
 
摘要: 其实重连机制并不是多么多高深的技术,其实就是一个在客户端做一个简单的判断,如果连接断了,那么就重新调用连接服务端的代码 当然,我们重连的动作肯定是发生在断连之后发生的,我们可以在上篇的心跳机制的基础上,简单地修改一下客户端的启动代码就可以了: 我们在连接断了之后,我们一般会在finally的方法中去 阅读全文
posted @ 2018-04-23 15:41 duan2 阅读(558) 评论(0) 推荐(0)
 
摘要: 前面简单地了解了一下IdleStateHandler,我们现在写一个简单的心跳demo: 1)服务器端每隔5秒检测服务器端的读超时,如果5秒没有接受到客户端的写请求,也就说服务器端5秒没有收到读事件,则视为一次超时 2)如果超时二次则说明连接处于不活跃的状态,关闭ServerChannel 3)客户 阅读全文
posted @ 2018-04-23 15:40 duan2 阅读(395) 评论(0) 推荐(0)
 
摘要: Netty提供了对心跳机制的天然支持,心跳可以检测远程端是否存活,或者活跃 今天我们就一起初识一下Netty4的心跳机制 Netty4.0提供了一个类,名为IdleStateHandler,这个类可以对三种类型的心跳检测 这个类的构造参数是这样的: 前三个的参数解释如下: 1)readerIdleT 阅读全文
posted @ 2018-04-23 15:34 duan2 阅读(2875) 评论(0) 推荐(0)
 
摘要: protobuf是由Google开发的一套对数据结构进行序列化的方法,可用做通信协议,数据存储格式,等等。其特点是不限语言、不限平台、扩展性强 Netty也提供了对Protobuf的天然支持,我们今天就写一个简单的示例,简单地了解一下Netty对Google的protoBuf的支持 我们的示例场景很 阅读全文
posted @ 2018-04-23 15:24 duan2 阅读(231) 评论(0) 推荐(0)
 
摘要: 本小节一起学习一下ChannelHandler,ChannelHandlerContext,ChannelPipeline这三个Netty常用的组件,不探究它们的底层源码,我们就简单的分析一下用法 首先先分析一下ChannelHandler,ChannelHandler是我们日常开发中使用最多的组件 阅读全文
posted @ 2018-04-23 15:23 duan2 阅读(225) 评论(0) 推荐(0)