netty
文章平均质量分 67
程序员-晨夕
这个作者很懒,什么都没留下…
展开
-
Netty心跳之IdleStateHandler作用原理
Netty心跳之IdleStateHandler作用原理Netty提供了对心跳机制的天然支持,心跳可以检测远程端是否存活,或者活跃今天我们就一起初识一下Netty4的心跳机制Netty4.0提供了一个类,名为IdleStateHandler,这个类可以对三种类型的心跳检测这个类的构造参数是这样的:前三个的参数解释如下:1)readerIdleTime:为读超时时间(即测试端一定时间内未接受到被测试端消息)2)writerIdleTime:为写超时时间(即测试端一定时间内向被测试端发送消息)转载 2021-04-26 17:04:08 · 1589 阅读 · 0 评论 -
Netty客户端启动后服务端接收消息的流程
Netty客户端启动后服务端接收消息的流程之前简单讲述了netty服务端启动的流程,客户端启动基本流程一致,今天我们简单介绍下服务端接收客户端发送的消息的过程1、看下服务端启动和接收客户端连接时pipeline的构建图2、客户端启动,处理select中事件2.1、获取unsafe对象,此时由于channel是NioServerSocketChannel,所以unsafe对象为NioMessageUnsafe类型2.2、调用NioMessageUnsafe的read方法2.3、调原创 2021-04-26 16:30:42 · 863 阅读 · 0 评论 -
Netty服务端源码流程分析
Netty服务端源码流程分析本节将简单分析下netty服务端的创建过程1、服务端创建代码如下 EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); try { //创建服务器端的启动对象,配置参数 ServerBootstrap bootstra原创 2021-04-16 11:06:54 · 166 阅读 · 2 评论 -
NIO和BIO的区别与联系
NIO和BIO的区别1、BIO服务端样例2、NIO服务端样例3、区别与联系区别:NIO首次线程阻塞发生在select方法,且从线程池中获取线程后线程一定有数据去读。BIO首次阻塞方法发生在accept方法,但是从线程池中获取线程后线程不一定有数据去读,从而导致线程等待客户端发送数据,资源浪费中。。。联系:无论是NIO还是BIO在数据读取时,都是阻塞的,本质上真正的IO操作其实都是阻塞的...原创 2021-04-13 15:11:43 · 225 阅读 · 0 评论