图灵学院 java架构师学习路线
心跳检测是Socket通信经常使用的保证网络连接正常的技术。那么如何实现心跳检测呢?图灵学院今天着重来为大家介绍一下如何使用Netty实现心跳检测。
1、新建java工程,并导入netty使用的jar包,最好将源码包也放在本工程下,便于了解netty的源码实现。
2、可以从netty自带的example中复制一个例子过来,在此基础上进行修改。
3、在此基础上对代码进行改造。打开EchoServer.java,添加空闲检测类。
4、编写心跳检测处理类。并将此类添加到pinpline的handler里面。
5、改造完了服务端,需要对客户端内容改造一下。启动客户端后,先发一个“hello”消息,然后等候服务端心跳信息“ping”,收到心跳后,回复心跳响应“ok”。心跳消息可以根据需要进行定义。修改的类为EchoClientHandler。
6、为方便查看可以将netty的日志打开。即:将此句p.addLast(new LoggingHandler(LogLevel.INFO));前面的注释去掉,执行测试一下。查看服务端,可以看到心跳包和心跳响应。
7、将客户端回复心跳的内容删除,再执行查看结果。此时可以看到服务端在30秒内没有收到心跳,认为客户端连接出现问题,将此连接关闭。
尽管Java架构师学习路线已经分享给大家,但有多少人能认真的去践行,这个就难说了。互联网寒冬已经到来,作为程序员,更应在此时提高自己,有着更高远的追求。
篇幅有限,如果需要更详细的java架构师学习路线资料可加博主qq:1993712276,或者去图灵官网查看