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